/// <summary>
/// 对象属性拷贝(全匹配拷贝)
/// </summary>
/// <param name="obj1">源对象</param>
/// <param name="obj2">目标对象</param>
/// <returns>目标对象</returns>
public static T PropertyCopy<K, T>(K obj1, ref T obj2)
{
Type souType = obj1.GetType();
Type tarType = obj2.GetType();
PropertyInfo[] pis = souType.GetProperties(BindingFlags.Public | BindingFlags.Instance);
if (null != pis)
{
foreach (PropertyInfo pi in pis)
{
string propertyName = pi.Name;
PropertyInfo pit = tarType.GetProperty(propertyName);
if (pit != null)
{
pit.SetValue(obj2, pi.GetValue(obj1, null), null);
}
}
}
return (T)obj2;
}
对象属性拷贝(全匹配拷贝)
最新推荐文章于 2024-09-30 17:27:48 发布
本文介绍了一种实现对象属性全匹配拷贝的方法,通过反射获取源对象的所有公共实例属性,并将这些属性值复制到目标对象中对应的同名属性上。
1288

被折叠的 条评论
为什么被折叠?



