标签:stat exce 通过 span name div 赋值 获取 反射
两个类我就不创建了,具体实现方法如下:
/// <summary> /// 通过反射把一个类的属性的值赋值给另一个类 /// </summary> /// <typeparam name="D"></typeparam> /// <typeparam name="S"></typeparam> /// <param name="s"></param> /// <returns></returns> 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; }
其中D代表新类,S代表原来的类。
首先实例化D类,sType代表获取S类的属性,dtype获取D类的属性,然后利用GetProperties()方法获取类别下的每一个属性,
如果D类下的属性和S类下的属性相同,则把S类属性相对应的value值赋值给D类队形的属性。(利用Getvalues()获取),
调用如下:
Mapper<User, UserInfo>(UserInfo u);
标签:stat exce 通过 span name div 赋值 获取 反射
原文地址:http://www.cnblogs.com/xinbaba/p/6938338.html