0

我刚刚遇到了一种情况,我需要使用我们其中一个程序集的新版本来修补发行版。我所有的程序集都是强名称,这是一个 Windows 窗体应用程序。我编辑了我的 App.config 以进行适当的重新映射,一切都很好,直到我们使用本地化版本测试了我们的软件。我们看到的问题是现有的附属程序集没有加载并且我们没有看到本地化的资源。我能找到的唯一解决方案是使用基本程序集作为模板,使用程序集链接器重建附属程序集。

几个问题:

如果我的基础程序集是强命名的,我的附属程序集也必须是强命名的吗?就我而言,我没有使用 GAC。

为什么我的附属程序集不使用我的 App.config 中指定的重定向?

4

1 回答 1

0

是的,附属程序集也必须是强命名的,并且需要与真实程序集相同的版本和公钥。

请参阅此链接: http: //www.codeguru.com/csharp/.net/net_general/tipstricks/article.php/c11367/

我不确定为什么在您使用重定向时未加载它。您将程序集 A 版本 1 替换为版本 2。您将版本 1 重定向到版本 2。您的程序集 A 的附属程序集仍在版本 1 中?它是否正确?这当然行不通。如果更换组件,则必须更换其卫星。

于 2009-04-22T08:25:12.747 回答