Linq update
2.利用反射自动复制属性
先写一个方法,利用反射获取属性信息实现自动copy属性值
public static void CopyObjectProperty<T>(T tSource, T tDestination) where T : class
{
//获得所有property的信息
PropertyInfo[] properties = tSource.GetType().GetProperties();
foreach (PropertyInfo p in properties)
{
p.SetValue(tDestination, p.GetValue(tSource, null), null);//设置tDestination的属性值
}
}
{
//获得所有property的信息
PropertyInfo[] properties = tSource.GetType().GetProperties();
foreach (PropertyInfo p in properties)
{
p.SetValue(tDestination, p.GetValue(tSource, null), null);//设置tDestination的属性值
}
}
有了这个就方便多了
db.myData.Attach(_pDate, db.myData.Single(c => c.ID == _pDate.ID));
改为
Code
myData _data = db.myData.Single(c => c.ID == _pDate.ID);
CopyObjectProperty<myData>(_pData,_data);
myData _data = db.myData.Single(c => c.ID == _pDate.ID);
CopyObjectProperty<myData>(_pData,_data);
搞定
欢迎转载但请注明来自[菩提树下的杨过]http://www.cnblogs.com/yjmyzz/archive/2009/04/20/1440014.html