当我使用checker程序中引用的“base”类型与我明确加载“base”时相比,当我检查类的子类(Abstract-> deriv)时,我看到了不同的行为输入检查程序。
所以,如果我在我的主Checker程序中执行此操作,该程序的基类型引用(baseType):
但是,如果我这样做:
任何想法都表示赞赏。
答案 0 :(得分:1)
在您的情况下,原因是该类型具有不同的身份。使用LoadFrom
时,程序集将加载到LoadFrom上下文中,并加载到加载到Load
上下文中的引用。由于程序集被加载到不同的上下文中,因此程序集中的类型具有不同的标识。
以下是一些链接,其中包含有关该主题的更多信息 http://blogs.msdn.com/b/suzcook/archive/0001/01/01/57248.aspx http://blogs.msdn.com/b/suzcook/archive/2003/05/29/57143.aspx
答案 1 :(得分:0)
确保第一个选项中引用的程序集版本与第二个选项中动态加载的程序集版本相同。如果您在两种情况下(相同版本等)加载相同的精确程序集,您应该得到相同的答案。
但是,如果您引用的是不同版本的程序集,则可能会得到不同的答案。