读书人

怎么将两个相同实体类全部属性逐个对比

发布时间: 2013-10-17 17:26:17 作者: rapoo

如何将两个相同实体类全部属性逐个对比
本帖最后由 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/

读书人网 >asp.net

热点推荐