Stiamo sviluppando un'applicazione transazionale in .NET (ASP.NET MVC, C #, Workflow Foundation, EntityFramework) e vogliamo implementare un sistema in cui gli utenti siano informati del lavoro che deve essere fatto sulla base di eventi nel sistema . Ad esempio, se una chiamata all'interfaccia esterna comporta il costo per l'aggiornamento di Widget A , l'utente potrebbe voler aggiornare il prezzo al dettaglio di Widget A o almeno rivederlo, quindi è necessario essere avvisati dell'aggiornamento dei costi.
Microsoft Dynamics CRM presenta il concetto di Feed attività e gli oggetti per supportarlo. Sembra essere il tipo giusto per quello di cui ho bisogno, anche se mi sembra anche un'infrastruttura che non mi serve. D'altra parte, rotolare il mio sembra un buon modo per perdere qualcosa di importante.
Prima di correre giù nella tana del coniglio per implementare un estremo o l'altro, ho pensato di chiedere qui un suggerimento su qualcosa di meglio (definito come un ingombro inferiore rispetto a Dynamics CRM, ma pre-definito quindi non lo faccio devo costruire il mio). Se lancio il mio, sto considerando qualcosa del tipo:
public class UserNotification
{
// Notifications will go to Roles (groups of users)
public Role RoleToNotify { get; set; }
// A notification will be about an object that needs to be worked on
public Type TypeOfThing { get; set; }
public long IdOfThing { get; set; }
// Time tracking
public DateTime TimeOfNotification { get; set; }
public DateTime TimeOfUserAction { get; set; }
}
Esiste un approccio alternativo che dovrei prendere in considerazione?