如何比较PropertyInfo类型

时间:2015-09-03 08:39:28

标签: c# .net

我使用

比较两种PropertyInfo类型
if(p1.GetType() == p2.GetType())
{
     // same type
}

我的问题是,当p1类型为System.Collections.Generic.ICollectionp2System.String时,这会产生真实。

进行比较的正确方法是什么?

1 个答案:

答案 0 :(得分:4)

调用p1.GetType()会获得typeof(PropertyInfo),因为这当然是对象的类型。

如果您想知道,该属性的类型可以使用p1.PropertyTypehttps://msdn.microsoft.com/pl-pl/library/3893z9ey(v=vs.110).aspx

所以你的代码将是:

if(p1.PropertyType == p2.PropertyType) 
{
    // some code
}