我们的应用程序使用Entity Framework 6.2.0.0。客户计算机上还有另一个应用程序,将Entity Framework 6.1.3.0安装到GAC中。因此,当我们的应用程序运行时,它将引发异常MissingMethodExeception
。
似乎所有6.x版本均已冻结,并被视为6.0.0.0,建议不要在GAC中安装Entity Framework:
https://github.com/aspnet/EntityFrameworkCore/issues/4370
通过代码库设置bindingRedirect
的实际路径的EntityFramework.dll
也无济于事,因为始终优先级最高的是GAC。
那么有什么办法可以忽略GAC程序集?
如果没有,在我看来,这是一种常见的情况,即另一个应用程序可以在GAC中安装其他应用程序使用的程序集并破坏这些应用程序。有办法再次避免这种情况吗?