public void HandleOneToOneReflexive(ISerializableObject handledItem, OneToOneDefAttribute attr, FieldInfo field) { if (_mode == UPMODE) { if (attr.DeleteType == DeleteTypes.CASCADE) { ISerializableObject iso = (ISerializableObject)field.GetValue(handledItem); _serializer.Connector.Delete(iso); } else { throw new NotImplementedException(); } } }
public void HandleOneToOneReflexive(ISerializableObject handledItem, OneToOneDefAttribute attr, FieldInfo field) { Type type = field.FieldType; IVirtualKey vKey = AttributeWorker.GetInstance(_serializer.Target).CreateVirtualKey(_serializer, type, handledItem.GetType()); try { vKey.InitVirtualKeyBySource(handledItem); } catch (InvalidOperationException) { field.SetValue(handledItem, null); return; } IRestriction r = Restrictions.RestrictionFactory.SqlRestriction(type, vKey.ToSqlStringForward(_serializer.Target)); ISerializableObject tmp = _serializer.Connector.Load(type, r); field.SetValue(handledItem, tmp); }
public void HandleOneToOneReflexive(ISerializableObject handledItem, OneToOneDefAttribute attr, FieldInfo field) { throw new NotImplementedException(); }
public void HandleOneToOneReflexive(ISerializableObject handledItem, OneToOneDefAttribute attr, FieldInfo field) { }