我正在处理一个使用 NHibernate 3 和 spring 进行 DI 的旧系统,我必须对此解决方案进行一些重构。该解决方案的一些项目使用的是 NHibernate 1.2,我将它们更改为 NHibernate 3。现在整个解决方案中唯一使用的 NHibernate 版本是 3。
现在的问题是,当我尝试加载解决方案中的任何 Web 服务时,系统尝试从 NHibernate 1.2 加载一个类型,我已经在另一个系统中测试了已发布的项目,它工作正常,应该是我的系统有问题,它只是给我:Could not load type 'NHibernate.Event.ListenerType' from assembly 'NHibernate, Version=1.2.1.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4'.
谁能帮我找出为什么 CLR 试图从未引用的程序集中加载类型?
最佳答案
感谢所有试图帮助我的人,但我找到了回应。
我的系统上有 .NET Reflector,曾几何时,我用它在我的系统上反射 NHibernate,它的版本是 1.2.1.4000,它在我的 DLL 中创建了一个副本缓存,它在加载顺序中是首选。我删除了缓存,现在一切正常
关于c# - 为什么我的系统试图从无效版本的程序集加载类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39422692/