Oggetto Feed attività da notificare agli utenti

3

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?

    
posta J.D. Ray 30.12.2015 - 21:15
fonte

1 risposta

1

Sembra che quello che hai descritto sia un esempio di libro di testo di quando devi utilizzare il pubblicare il modello di iscrizione , che è anche conosciuto come modello secondario di pub .

Pub Sub viene utilizzato quando si ha un mittente (ad esempio aggiornamento del prezzo del widget) e un numero variabile di Sottoscrittori (ad esempio le parti interessate al cambio di prezzo) e ciò che hai descritto è un caso classico per questo.

Per quanto riguarda l'utilizzo di MS Dynamics CRM o il rollover personale, voterei sicuramente contro il tuo. Le code degli eventi non sono molto complicate, ma ci sono un gran numero di fornitori di terze parti che hanno già fatto quel lavoro per te e c'è poco da guadagnare per te. Guardando la pagina di Wikipedia per il software Message Broker ti daremo un punto di partenza e, in base alle esigenze dell'ambiente, potrai facilmente essere in grado di trovare qualcosa che soddisfi le tue esigenze.

    
risposta data 02.01.2016 - 16:41
fonte

Leggi altre domande sui tag