To receive notification from the database when the contents of the table change / update, you can use TableDependency .
The difference with .NET SqlDependency is that TableDependency raises events that contain database table values ββthat have been changed / deleted / inserted.
Using SqlDependency , you must make a choice to receive fresh data at any time. SqlDependency notify your code that something has changed in the database table.
With TableDependency you can avoid this because the event you receive contains all deleted / inserted / changed values:
string conString = "data source=.;initial catalog=myDB;integrated security=True"; using(var tableDependency = new SqlTableDependency<Customers>(conString)) { tableDependency.OnChanged += TableDependency_Changed; tableDependency.Start(); Console.WriteLine("Waiting for receiving notifications..."); Console.WriteLine("Press a key to stop"); Console.ReadKey(); } ... ... void TableDependency_Changed(object sender, RecordChangedEventArgs<Customers> e) { if (e.ChangeType != ChangeType.None) { var changedEntity = e.Entity; Console.WriteLine("DML operation: " + e.ChangeType); Console.WriteLine("ID: " + changedEntity.Id); Console.WriteLine("Name: " + changedEntity.Name); Console.WriteLine("Surname: " + changedEntity.Surname); } }
source share