ASP.NET 预编译和合并与强名称签名证书

问题描述

我有一个 ASP.NET 应用程序,该应用程序当前使用强名称签名,这似乎运行良好,并且该应用程序不会接受根据构建时的程序集清单具有冲突公钥令牌的 DLL,但是我在哪里在发布期间使用预编译和合并选项时会出现问题。

我目前使用的预编译合并选项是“将所有输出合并到一个程序集”,并且从 aspnet_merge.exe 生成的 DLL 不是强命名的,应用程序似乎并不关心,正常运行。

经过一番研究,我发现aspnet_merge.exe有一个参数来提供-keyfile,虽然这在Visual Studio的发布GUI中不可用(至少我看不到),所以我写了一个脚本,附加了密钥命令的信息。在更改后检查合并的输出 DLL 时,我可以看到它实际上现在是强命名的,但问题是 Web 应用程序没有像其他强命名的 DLL 那样验证公共令牌,我假设是因为它在构建时不是程序集清单的一部分?

有什么办法可以从 aspnet_merge.exe 获得一个强命名的 DLL,它也像其他 DLL 一样经过公共令牌验证?

感谢任何建议或建议。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)