/// <summary>
 /// Save changes
 /// </summary>
 /// <param name="cancellationToken"></param>
 /// <returns></returns>
 public override Task <int> SaveChangesAsync(CancellationToken cancellationToken = new CancellationToken())
 {
     TrackerFactory.Track(this);
     return(base.SaveChangesAsync(cancellationToken));
 }
 /// <summary>
 /// Save changes
 /// </summary>
 /// <returns></returns>
 public override int SaveChanges()
 {
     TrackerFactory.Track(this);
     return(base.SaveChanges());
 }