我在 .NET 程序集重定向方面遇到问题。第 3 方程序集 A 引用另一个第 3 方程序集 B。B 未签名,因此它没有公钥 token 。 A 的 list :
....
.assembly extern B
{
.ver 1:0:0:0
}
....
如何进行绑定(bind)重定向到已签名的 B 的下一个版本? 如果我没有在 assemblyBinding/dependentAssembly/assemblyIdentity 中指定 publicKeyToken,则运行时找不到程序集“B,Version=2.0.0.0,Culture=neutral,PublicKeyToken=null”。如果我指定,则重定向规则与元数据中的依赖程序集引用不匹配。
最佳答案
如果您知道下一个版本将被签名,您可以获取公钥的副本吗?
顺便说一句,在流程中从未签名更改为签名而无需重新编译,从技术上讲是可以完成的,但这是一个非常糟糕的主意。
关于c# - 当新版本已签名但以前未签名时,.NET 程序集绑定(bind)重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9821982/