public static void Example(string connectionString) { using (var sqlTableDependency = new ProductsSqlTableDependencyProvider2(connectionString, ThreadPoolScheduler.Instance)) { sqlTableDependency.SubscribeToEntityChanges(); Console.ReadKey(); } }
public static void Example(string connectionString) { using (var sqlTableDependency = new ProductsSqlTableDependencyProvider2(connectionString, ThreadPoolScheduler.Instance)) { IDisposable whenEntityRecordChangesSubscription = sqlTableDependency.WhenEntityRecordChanges .Where(c => c.ChangeType == ChangeType.Update) .Subscribe(c => { var entity = c.Entity; Console.WriteLine("Id: " + entity.Id); Console.WriteLine("Name: " + entity.Name); var oldValues = c.EntityOldValues; if (oldValues != null) { Console.WriteLine(Environment.NewLine); Console.WriteLine("Id (OLD): " + oldValues.Id); Console.WriteLine("Name (OLD): " + oldValues.Name); } }); IDisposable whenStatusChangesSubscription = sqlTableDependency.WhenStatusChanges .Subscribe(status => { Console.WriteLine($"SqlTableDependency Status {status}"); }); sqlTableDependency.SubscribeToEntityChanges(); Console.ReadKey(); whenEntityRecordChangesSubscription.Dispose(); whenStatusChangesSubscription.Dispose(); } }