【发布时间】:2010-07-20 00:51:01
【问题描述】:
当我使用检查程序中引用的“基本”类型时检查子类(Abstract->deriv)的类型时,与显式加载“基本”类型时相比,我看到了不同的行为在检查程序中。
所以如果我在我的主 Checker 程序中执行此操作,该程序在以下位置引用了基类型 (baseType):
- 将 derivType 加载为 Assembly.ReflectionOnlyLoadFrom(Path_to_deriv_dll)->typeToLoad
- var baseType = typeof(abstract_class) //abstract_class 的程序集被引用在
- typeToLoad.IsSubClassOf(baseType) 产生 False
但是,如果我这样做:
- 将 baseType 加载为 Assembly.ReflectionOnlyLoadFrom(Path_to_base_type_dll)->baseType
- 将 derivType 加载为 Assembly.ReflectionOnlyLoadFrom(Path_to_deriv_dll)->typeToLoad
- 检查 typeToLoad.IsSubClassOf(baseType),结果为 True
感谢任何想法。
【问题讨论】:
标签: c#