Esempio n. 1
0
 public void RemoveRelationObject(T o, string FKeyName)//对于关联的数据对象,只打标记,不真正的删除
 {
     if (Contains(o))
     {
         //ol.Remove(o);
         //IsChanged = true;
         FieldInfo f = ls.getFieldByName(o, FKeyName);
         if (f != null)
         {
             f.SetValue(o, o.getUnAvailableIDValue());
         }
         if (o.DataFlag == DataOperation.Nothing)
         {
             o.DataFlag = DataOperation.Update;
         }
         if (Status == DataListStatus.DataUnLinked)
         {
             Status = DataListStatus.DataUnLinkedChanged;
         }
         if (Status == DataListStatus.DataLinked)
         {
             Status = DataListStatus.DataLinkedChanged;
         }
     }
 }
Esempio n. 2
0
 public new void Add(T item)
 {
     base.Add(item);
     sendChangedEvent(item, LFCObjChanged.ObjectCreated);
     if (Status == DataListStatus.DataUnLinked)
     {
         Status = DataListStatus.DataUnLinkedChanged;
     }
     if (Status == DataListStatus.DataLinked)
     {
         Status = DataListStatus.DataLinkedChanged;
     }
 }
Esempio n. 3
0
 public new void Remove(T item)//只有没有关联的时候真的删除,否则只是打标记
 {
     if (Status == DataListStatus.DataUnLinked || Status == DataListStatus.DataUnLinkedChanged)
     {
         Status = DataListStatus.DataUnLinkedChanged;
         base.Remove(item);
         sendChangedEvent(item, LFCObjChanged.ObjectDeleted);
         return;
     }
     //item.DataFlag = DataOperation.Delete;
     if (Status == DataListStatus.DataLinked)
     {
         Status = DataListStatus.DataLinkedChanged;
     }
 }
Esempio n. 4
0
 public void setStatus(string s)
 {
     if (s == "DataLinked")
     {
         Status = DataListStatus.DataLinked;
     }
     if (s == "DataLinkedChanged")
     {
         Status = DataListStatus.DataLinkedChanged;
     }
     if (s == "DataUnLinkedChanged")
     {
         Status = DataListStatus.DataUnLinkedChanged;
     }
     Status = DataListStatus.DataUnLinked;
 }
Esempio n. 5
0
        public void AddRelationObject(T o, string FKeyName, string FKeyValue)
        {
            Add(o);
            FieldInfo f = ls.getFieldByName(o, FKeyName);

            if (f != null)
            {
                f.SetValue(o, FKeyValue);
            }
            if (o.DataFlag == DataOperation.Nothing)
            {
                o.DataFlag = DataOperation.Update;
            }
            if (Status == DataListStatus.DataUnLinked)
            {
                Status = DataListStatus.DataUnLinkedChanged;
            }
            if (Status == DataListStatus.DataLinked)
            {
                Status = DataListStatus.DataLinkedChanged;
            }
        }
Esempio n. 6
0
 public new void Clear()//相当于初始化
 {
     base.Clear();
     Status = DataListStatus.DataUnLinked;
 }