【发布时间】:2010-11-16 23:58:22
【问题描述】:
我有一个程序集 Foo,它引用了程序集 Bar(版本 X.X.X.2000)。 在属性中,特定版本设置为 False。 我在本地GAC 中同时拥有 Bar (x.x.x.2000) 和 Bar (x.x.x.1000)。 一切都很好。
在另一台机器上,GAC 中没有 Bar 的版本,但 Bar (xxx1000) 与 Foo 位于同一目录中,运行 Foo 将失败并声称找不到 Barr (xxx2000)
无法加载文件或程序集 'Bar, Version=x.x.x.2000, Culture=neutral, PublicKeyToken=YXYXYXYXXYX' 或其之一 依赖关系。找到的程序集的清单定义与 装配参考。 (HRESULT 异常:0x80131040)
Foo 不应该使用 Bar (x.x.x.1000),因为特定版本设置为 False 还是我遗漏了什么?
也许我没有了解特定版本的实际工作原理。
关于 Stack Overflow 上的特定版本引用还有一些其他问题,但对我没有任何帮助。
编辑
进一步阅读:http://www.code-magazine.com/article.aspx?quickid=0507041&page=3
【问题讨论】:
-
这只发生在强命名(签名)程序集上,因为版本检查只发生在正在使用的程序集上。
标签: .net visual-studio-2008 assemblies reference