Exemple #1
0
 /// <summary>
 /// 模型数据适配
 /// </summary>
 /// <param name="model">模型</param>
 /// <param name="source">源数据</param>
 /// <param name="adapter">适配器</param>
 public void ModelAdapt(object source, IModelAdapt adapter)
 {
     if (source == null)
     {
         return;
     }
     adapter.ModelAdapt(this, source);
 }
Exemple #2
0
        /// <summary>
        /// 模型集合适配
        /// </summary>
        /// <typeparam name="M">模型类型</typeparam>
        /// <param name="models">模型集合</param>
        /// <param name="soruce">数据源</param>
        /// <param name="adapter">自定义适配器</param>
        public static void ModelsAdapt <M>(this IList <M> models, IEnumerable soruce, IModelAdapt adapter)
            where M : ModelBase
        {
            if (soruce == null)
            {
                return;
            }
            var enumerator = soruce.GetEnumerator();

            enumerator.Reset();
            while (enumerator.MoveNext())
            {
                var m = Activator.CreateInstance <M>();
                m.ModelAdapt(enumerator.Current, adapter);
                models.Add(m);
            }
        }
Exemple #3
0
 /// <summary>
 /// 模型基类构造函数
 /// </summary>
 /// <param name="source">源数据</param>
 /// <param name="adapter">数据适配器</param>
 public ModelBase(object source, IModelAdapt adapter)
 {
     this.ModelAdapt(source, adapter);
 }