public ObjectTrackingInfo GetObjectTrackingInfo(object obj) { ObjectTrackingInfo info; ObjectsTracking.TryGetValue(obj, out info); return(info); }
public ObjectTrackingInfo GetTrackingInfo(object obj) { if (obj == null) { throw new ArgumentNullException("obj"); } ObjectTrackingInfo objTrkInfo; if (!ObjectsTracking.TryGetValue(obj, out objTrkInfo)) { var entityMap = Context.ContextMap.EntityMaps.SingleOrDefault(q => q.EntityType == obj.GetType() || q.EntityType == obj.GetType().BaseType); if (entityMap == null) { throw new Exception("Entity does not have an associated map."); } objTrkInfo = new ObjectTrackingInfo(obj, entityMap.GetDbSet(Context), false); //entityMap.RelationshipMaps.Select( ObjectsTracking.Add(obj, objTrkInfo); } return(objTrkInfo); }