在签名并重新编译引用的程序集(MyAssembly.dll)之后,我的Web应用程序失败,“找到的程序集的清单定义名称MyReferencedAssembly与程序集引用不匹配”。
这是我的预期,因为PublicKeyToken已从null更改为新密钥。
您似乎应该能够使用web.config文件中的assemblyBinding部分来使应用程序使用新签名的程序集。
问题是,似乎没有办法在assemblyIdentity元素中识别应用程序将要查找的程序集(旧的,无符号程序集)。
由于旧的publicKeyToken值为null,我尝试将其保留为空,尝试将其设置为空字符串,引号为null,并且它们似乎都不起作用。
我已经尝试更改版本号,以便我可以使用从旧版本到新版本的绑定重定向,还尝试为程序集设置特定的代码库。
所有这一切都失败了所以我不得不相信程序集加载过程不喜欢在引用/预期未签名的程序集时加载已签名的程序集。
如何执行此映射?
重新编译引用已签名程序集的整个代码库不是一种选择。
感谢您的任何建议。