如何将两个相同实体类全部属性逐个对比
本帖最后由 tianqi881025 于 2013-10-14 16:32:43 编辑
有两个实体变量,存放的是修改前和修改后的信息。
比如:
InfoModel oldModel=new InfoModel();
InfoModel newModel=new InfoModel();
我现在需要遍历这两个实体类的全部属性的值来进行对比,并将有差别的列出来。
请问如何实现?
------解决方案--------------------反射遍历
System.Reflection.PropertyInfo[] mPi = typeof(InfoModel).GetProperties();
for (int i = 0; i < mPi.Length; i++)
{
System.Reflection.PropertyInfo pi = mPi[i];
oldValue = pi.GetValue(oldModel, null).ToString();
newValue = pi.GetValue(newModel, null).ToString();
if (oldValue !=newValue )
{
有差别的列出来
}
}
}
*****************************************************************************
http://feiyun0112.cnblogs.com/