反射實現不一樣模型相同屬性賦值

在雙模型的項目結構中常常遇到模型數據賦值問題,本身寫太麻煩,因此偷懶寫個方法ide

 1 public class ModelBinding
 2     {
 3         /// <summary>
 4         /// 模型賦值
 5         /// </summary>
 6         /// <param name="target">目標</param>
 7         /// <param name="source">數據源</param>
 8         public static void CopyModel(object target, object source)
 9         {
10             Type type1 = target.GetType();
11             Type type2 = source.GetType();
12             foreach (var mi in type2.GetProperties())
13             {
14                 var des = type1.GetProperty(mi.Name);
15                 if (des != null)
16                 {
17                     try
18                     {
19                         des.SetValue(target, mi.GetValue(source, null), null);
20                     }catch
21                     {}
22                 }
23             }
24         }
25     }
View Code
相關文章
相關標籤/搜索