Java的getClass(),isAssignableFrom()等的c#等价物是什么?

pet*_*ust 9 c# java class

我正在从Java转换为C#,代码类似于:

Class<?> refClass = refChildNode.getClass();
Class<?> testClass = testChildNode.getClass();
if (!refClass.equals(testClass)) {
....
}
Run Code Online (Sandbox Code Playgroud)

和其他地方使用Class.isAssignableFrom(Class c)...和类似的方法

是否存在类比较和属性的直接等价表以及无法实现的代码?

(这<?>只是为了停止IDE关于泛型的警告.一个更好的解决方案将不胜感激)

eld*_*rge 13

Type refClass = refChildNode.GetType();
Type testClass = testChildNode.GetType();
if (!refClass.Equals(testClass)) 
{
    ....
}
Run Code Online (Sandbox Code Playgroud)

看看System.Type类.它有你需要的方法.

  • 您可能需要提及Type.IsAssignableFrom方法:http://msdn.microsoft.com/en-us/library/system.type.isassignablefrom.aspx (6认同)