here you go, a 是 实体2, b 是 实体1
public static void ShadowCopy(object a, object b) { if (a.GetType() == b.GetType()) { PropertyInfo[] properties = a.GetType().GetProperties(); foreach (var p in properties) { var value = p.GetValue(a, null); if (value != GetDefault(p.GetType())) p.SetValue(b, value, null); } } } public static object GetDefault(Type type) { if(type.IsValueType) { return Activator.CreateInstance(type); } return null; }
正是我想要的,谢谢!
我想可以用反射写个copy的方法,方法体循环属性,为null则continue。
求事例代码
Map两个类的属于的对应关系,然后用反射检查,update实体
求事例代码
这方面的扩展还真没有,你更新不就行了
字段太多,更新起来不方便,代码太冗余。