[英]How to check equality of collection type properties, using reflection in C#
我有一类具有许多属性的类,其中一些是自定义类型的列表。 我需要比较该类的两个实例,并获取其中不相等的属性的列表。
我使用自定义属性(针对我想在比较中包括的相关属性)设计了它,并使用IEquatable
,但是对于列表,我遇到了问题。 我打算使用SequenceEqual
但是它需要列表的类型( IEnumerable<SomeType>
),我没有该列表,也不知道如何设置。 我知道GetElementType
和GetGenericArguments
方法,但无法在IEnumerable<>
使用它们来使SequenceEqual
工作。
我正在寻找适合这种情况的最佳设计,并且还提供有关如何实际执行此操作的代码示例。
此Codeplex项目使用反射对任意两个.NET对象进行深入比较: http : //comparenetobjects.codeplex.com/
使用反射对任意两个.NET对象进行深层比较。 显示两个对象之间的差异。
与.NET Framework 3.5和更高版本兼容。 便携式类库版本2.0的新功能,可与.NET 4.0 +,Silverlight 5 +,Windows Phone 8 +,Windows RT 8 +,Xamarin iOS和Xamarin Droid一起使用
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.