コード例 #1
0
        public void RevertAllChanges()
        {
            _objectContext.DetectChanges();

            IEnumerable <object> ModifiedandDeletedcollection = _objectContext.ObjectStateManager.GetObjectStateEntries(EntityState.Modified | EntityState.Deleted).Select(x => x.Entity).ToList();

            _objectContext.Refresh(RefreshMode.StoreWins, ModifiedandDeletedcollection);


            IEnumerable <object> AddedCollection = _objectContext.ObjectStateManager.GetObjectStateEntries(EntityState.Added).Select(x => x.Entity).ToList();

            AddedCollection.ForEach(addedEntity => _objectContext.Detach(addedEntity));
        }
コード例 #2
0
        public void RevertChanges(bool isSaveOnClientRecord)
        {
            _objectContext.DetectChanges();

            IEnumerable<object> ModifiedandDeletedcollection = _objectContext.ObjectStateManager.GetObjectStateEntries(EntityState.Modified | EntityState.Deleted).Select(x => x.Entity).ToList();
            _objectContext.Refresh(RefreshMode.StoreWins, ModifiedandDeletedcollection);


            IEnumerable<object> AddedCollection = _objectContext.ObjectStateManager.GetObjectStateEntries(EntityState.Added).Select(x => x.Entity).ToList();

           // AddedCollection.ForEach(addedEntity => _objectContext.Detach(addedEntity));
   
            foreach(var addedEntity in AddedCollection)
            {
               if(addedEntity.GetType().Name == "Corresponcence")
               {
                   Corresponcence entity = (Corresponcence)addedEntity;
                   if(entity.OwnerID == Guid.Empty)
                   {
                     _objectContext.Detach(addedEntity);
                   }
                   else if (!isSaveOnClientRecord)
                   {
                       _objectContext.Detach(addedEntity);
                   }
               }
            }
        }
コード例 #3
0
 public void Refresh(RefreshMode mode)
 {
     _objectContext.DetectChanges();
     _objectContext.Refresh(mode, _objectContext.EventGolfs);
 }