private bool SubmitChanges(EntitySession.TrackedItem item) { switch (item.State) { case SubmitAction.Update: base.ProviderTable.Update(item.Instance); return(true); case SubmitAction.PossibleUpdate: if ((item.Original == null) || !this.Mapping.IsModified(item.Entity, item.Instance, item.Original)) { break; } base.ProviderTable.Update(item.Instance); return(true); case SubmitAction.Insert: base.ProviderTable.Insert(item.Instance); return(true); case SubmitAction.InsertOrUpdate: base.ProviderTable.InsertOrUpdate(item.Instance); return(true); case SubmitAction.Delete: base.ProviderTable.Delete(item.Instance); return(true); } return(false); }
private void AcceptChanges(EntitySession.TrackedItem item) { switch (item.State) { case SubmitAction.Update: case SubmitAction.PossibleUpdate: this.AssignAction((T)item.Instance, SubmitAction.PossibleUpdate); break; case SubmitAction.Insert: this.AddToCache((T)item.Instance); this.AssignAction((T)item.Instance, SubmitAction.PossibleUpdate); break; case SubmitAction.InsertOrUpdate: this.AddToCache((T)item.Instance); this.AssignAction((T)item.Instance, SubmitAction.PossibleUpdate); break; case SubmitAction.Delete: this.RemoveFromCache((T)item.Instance); this.AssignAction((T)item.Instance, SubmitAction.None); break; } }
bool EntitySession.ITrackedTable.SubmitChanges(EntitySession.TrackedItem item) { return(this.SubmitChanges(item)); }
void EntitySession.ITrackedTable.AcceptChanges(EntitySession.TrackedItem item) { this.AcceptChanges(item); }
internal Edge(EntitySession.TrackedItem source, EntitySession.TrackedItem target) { this.Source = source; this.Target = target; this.hash = this.Source.GetHashCode() + this.Target.GetHashCode(); }