【发布时间】:2013-10-01 12:56:11
【问题描述】:
情况如下:
假设我有一个项目,其中包含 2 个 nuget 库引用 - 库 A 和 B:
- A 版本为 1.5
- 但 B 引用了旧版本的 A,例如1.4
在 VS 中,一切都可以正常编译和运行(我猜是因为 A 1.5 实现了 1.4 所需的所有功能)。
但是在 Azure 模拟器中运行导致立即 TypeLoadException,大概是因为加载了旧版本的 A(我认为是因为首先加载了 B,并且它的依赖项是 A 1.4),因此类型和方法(例如 MyObject ) 在 A 1.5 中添加并被我的项目使用的无法识别。
我得到的正是: “无法从程序集 'A,Version=1.4,Culture=neutral,PublicKeyToken=null' 加载类型 'MyObject'。” 当然,我已经用 A 和 1.4 替换了真实姓名和版本号 :)
我知道一种解决方案是将 B 更新为使用 A 1.5,但是还有其他方法可以解决这个问题吗?如果有其他使用 A 1.4 的库 B、C、D、E...,我会更新所有这些库中对 A 的引用...
感谢您的帮助
【问题讨论】:
标签: azure version emulation nuget