Exemplo n.º 1
0
        public virtual DeltaDataCollectionBase Clone()
        {
            DeltaDataCollectionBase result = CreateNewInstance();

            result.Append(this);

            return(result);
        }
Exemplo n.º 2
0
        /// <summary>
        /// 根据业务实体的类型,返回该类业务实体的DeltaDataCollection对象
        /// </summary>
        /// <typeparam name="T">业务实体类</typeparam>
        /// <param name="type">业务对象类型</param>
        /// <returns>Delta数据对象</returns>
        public static DeltaDataCollectionBase <T> GetDeltaData <T>(Type type) where T : IList, new()
        {
            DeltaDataCollectionBase <T> result = null;

            foreach (IDeltaDataControl control in DeltaDataControls)
            {
                if (typeof(T) == type)
                {
                    if (result == null)
                    {
                        result = (DeltaDataCollectionBase <T>)control.DeltaData.Clone();
                    }
                    else
                    {
                        result.Append(control.DeltaData);
                    }
                }
            }

            return(result);
        }