当前位置:  开发笔记 > 编程语言 > 正文

比较具有相同数据的两个对象

如何解决《比较具有相同数据的两个对象》经验,为你挑选了1个好方法。

我想比较两个对象,例如:

 DirectoryInfo di1 = new DirectoryInfo("C:\\");
 DirectoryInfo di2 = new DirectoryInfo("C:\\");

好的,是的,我知道我们这里有不同的引用,这个类没有实现IComparable,甚至GetHashCode返回不同​​的结果.

但它们是一样的!(逻辑:))

我知道我可以使用反射来比较类之间的每个字段和属性,但它太慢了.

我也可以使用序列化; 序列化每个对象并比较二进制数据,但这更慢!

还有其他想法吗?



1> casperOne..:

我建议IEqualityComparer在那里创建一个实现并封装相等检查代码.以下是有关以下文档的链接IEqualityComparer:

http://msdn.microsoft.com/en-us/library/ms132151.aspx

推荐阅读
赛亚兔备_393
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有