Erstellen Sie Echtzeit-Benachrichtigungs-Modul wie Facebook für Datenbank-änderungen
Ich Versuche zu erstellen Benachrichtigungs-Modul, wie Facebook mit ASP.NET MVC 4.
Habe ich einige Tabellen in meiner Datenbank.
Sobald jemand ändern (Insert/Update/Delete) Reihe von Tabellen in der Datenbank, ich werde in der Lage sein zu zeigen, dass es als Meldung in meiner Anwendung front-end -
Möchte nur wissen, beste Weg, um herauszufinden, was , schätzen Sie eine Anregung oder eine Ressource
Danke!
- Vielleicht möchten Sie sich an SignalR
- Yeah! Ich schon hinzufügen, dass die Bibliothek für mein Projekt , da folgte diesem tutorial auch venkatbaggu.com/..., aber in diesem tutorial nicht zeigen, eine Benachrichtigung beim ändern wir die Zeile in der Tabelle
- Dann müssen Sie nach dem code, die Sie versucht haben und das problem erklären.
- Hier ist die Schritt für Schritt die Umsetzung von SignalR asp.net/signalr/overview/getting-started/... Beispiel-code, wenn Sie bereits umgesetzt und seine nicht funktioniert, poste deinen code hier.
- dieser link funktioniert nicht
- es ist kein Fehler im code , ich will nur gehen Sie zum nächsten Schritt dieses tutorial, das zeigt die änderungen in der Datenbank als Benachrichtigung
- Dann schlage ich vor, Sie tag diese Frage "signalr" und stellen Sie klar, was Sie tun möchten, so Ihr nicht weiter zu verschwenden, anderen Usern Zeit
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie SignalR was ist eine Bibliothek für die Entwicklung von Anwendungen, die eine Echtzeit-Kommunikation.In solchen Anwendungen sobald die Daten auf dem server generiert oder von einer interessanten Veranstaltung geschieht auf dem server muss der client aktualisiert werden mit den neuesten Daten. Der traditionelle Ansatz, um diese Funktionalität zu erreichen ist, um Ajax-Aufrufe an den server in regelmäßigen Abständen. Aber dieser Ansatz hat seine eigenen Tücken. Ein anderer Weg ist die Benutzung von HTML5 Web Sockets oder Server Gesendeten Ereignisse (SSE) zum durchführen von Echtzeit-Kommunikation. Jedoch sind beide Techniken funktionieren nur auf der Browser unterstützt HTML5. SignalR verwendet HTML5 Web Sockets, wenn die Ziel-browser unterstützt wird, andernfalls fällt es zurück zu den anderen Techniken.
Erstellen Sie ein Benachrichtigungs-system .Wenn Sie mit ASP.NET WebForms hinzufügen, eine neue SignalR Hub Class, um das Projekt wie folgt:
Nächste, fügen Sie eine Globale.asax-Datei, um Ihre web-Anwendung und schreiben Sie den folgenden code in der Application_Start-Ereignis-handler.
Darüber hinaus finden Sie bestimmte Skript-Dateien im Scripts-Ordner.
SignalR-Skripte
Fügen Sie nun ein web-Formular an das Projekt und nennen Sie es als AdminForm.aspx. Fügen Sie das folgende markup in das web-Formular:
Den AdminForm.aspx bezieht sich SignalR-Skript-Dateien in den head-Abschnitt. Beachten Sie den code markiert, in der Fett. Zuerst wird eine variable mit dem Namen proxy erklärt wird, um einen Verweis auf ein proxy des remote-hub-Klasse (NotificationHub). Stellen Sie sicher, dass die client-seitigen code verwendet Kamel-Schreibweise in den Namenskonventionen. Zum Beispiel, NotificationHub ist nach wie notificationHub im client-code.
Neben der click-Ereignishandler des button-Kabel für eine Funktion. Die client-Ereignishandler ruft die sendNotifications () - Methode auf dem proxy-Objekt und übergibt die Benachrichtigung durch die Eingabe in der textbox (siehe weiter oben Abbildung, um zu wissen, was das admin-form aussieht).
Schließlich wird die start () - Methode der hub wird aufgerufen, um die Verbindung zu starten.
Fügen Sie einen anderen web-Formulars zum Projekt und nennen Sie es " ClientForm.aspx. Taste-in der folgenden markup-Code in das web-Formular:
Nun die Benachrichtigung schicken, der admin wird angezeigt, um alle Kunden wie diese.
Anzeige von Echtzeit-updates von SQL Server mit SignalR und SQL-Abhängigkeit, gehen Sie folgendermaßen vor:
Schritt 1: Aktivieren von Service Broker für die Datenbank
Folgenden ist die Abfrage, müssen Sie zum aktivieren des service broker -
Schritt 2: Aktivieren der SQL-Abhängigkeit
Schritt 3: Erstellen der hub Klasse
Schritt 4: Holen Sie sich die Daten aus dem Repository
Erstellen MessagesRepository, um die Nachrichten von der Datenbank, wenn Daten aktualisiert werden.
Schritt 5: Registrieren SignalR beim Start der Klasse
Schritt 6: verwenden Sie die Methode, um zu zeigen, Echtzeit an Ihrem Blick
Hoffe, das hilft 🙂
Können Sie SqlDependency + SignalR, es zu tun.
Diesem link Folgen:
SqlDependency : http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqldependency(v=vs. 110).aspx
SignalR: http://signalr.net/