Query Notifications mit Microsoft SQL Server und Entity Framework
15.04.2019, 00:00 Uhr
Nachricht vom Server
SqlDependency gibt Laut, wenn sich Daten einer Microsoft-SQL-Server-Tabelle ändern.
In der Praxis der Softwareentwicklung mit .NET und .NET Core stellt sich immer wieder die Frage, wie man sich vom Datenbankserver informieren lassen kann, wenn sich Datensätze in einer Datenbanktabelle geändert haben. Microsoft bietet seit SQL Server 2005 dafür das Konzept der Abfragebenachrichtigungen (query notifications [1]) und dazu korrespondierend die .NET-Klasse System.Data.SqlClient.SqlDependency (seit .NET Framework 2.0 [2] und in .NET Core seit Version 2.1 [3]). In Oracle funktioniert dies ab Version 9.2 mithilfe der Klasse Oracle.DataAccess.Client.OracleDependency aus Oracles eigenem .NET-Treiber ODP.NET [4].
Entity Framework (EF) und Entity Framework Core (seit Version 2.1 [5]) können diese Benachrichtigungen nicht abstrahieren. Dennoch lassen sich Abfragebenachrichtigungen zusammen mit Microsofts objektrelationalen Mappern verwenden. Der Code in diesem Beitrag, der dies zeigt, läuft sowohl mit Entity Framework als auch mit EF Core.
Jetzt 1 Monat kostenlos testen!
Sie wollen zukünftig auch von den Vorteilen eines plus-Abos profitieren? Werden Sie jetzt dotnetpro-plus-Kunde.
- + Digitales Kundenkonto,
- + Zugriff auf das digitale Heft,
- + Zugang zum digitalen Heftarchiv,
- + Auf Wunsch: Weekly Newsletter,
- + Sämtliche Codebeispiele im digitalen Heftarchiv verfügbar