Example #1
0
        protected virtual EntityStateCollection SplitEntity()
        {
            var listState = new List <EntityState>
            {
                EntityState.Added,
                EntityState.Modified,
                EntityState.Deleted
            };

            var listEntry = DbContext.ChangeTracker.Entries()
                            .Where(x => listState.Contains(x.State))
                            .ToList();

            var entityStatesModel = new EntityStateCollection
            {
                ListAdded = listEntry.Where(x => x.State == EntityState.Added).Select(x => new EntityStateModel(x))
                            .ToList(),
                ListModified = listEntry.Where(x => x.State == EntityState.Modified)
                               .Select(x => new EntityStateModel(x)).ToList(),
                ListDeleted = listEntry.Where(x => x.State == EntityState.Deleted).Select(x => new EntityStateModel(x))
                              .ToList()
            };

            return(entityStatesModel);
        }
 /// <summary>
 /// Sets the provided entities to the Entities property.
 /// </summary>
 /// <param name="entities"></param>
 public EntityLocator(EntityStateCollection entities)
 {
     Entities = entities;
 }