你的位置:首页 > ASP.net教程

[ASP.net教程]C# 两个具有相同属性的类赋值


最近有遇到两个类之间的赋值问题,两个类的属性几乎都一样的,所以写了个通过反射获取属性的然后赋值的方法,把一个类的属性的值赋值给另一个类。

框架是.net 4.5

 public static D Mapper<D, S>(S s)    {      D d = Activator.CreateInstance<D>();      try      {        var sType = s.GetType();        var dType = typeof(D);        foreach (PropertyInfo sP in sType.GetProperties())        {          foreach (PropertyInfo dP in dType.GetProperties())          {            if (dP.Name == sP.Name)            {              dP.SetValue(d, sP.GetValue(s));            }          }        }      }      catch (Exception ex)      {              }      return d;    }