下载swagger.net到web Api项目后,我得到Assembly生成失败的错误

本文关键字:Assembly 失败 错误 net swagger web Api 项目 下载 | 更新日期: 2023-09-27 18:17:57

我已经从Nuget包中安装了。net的SwaggerUI,并试图用swagger测试web api方法。但我是在编译时出错。

Error   Assembly generation failed -- Referenced assembly 'WebActivator' does not have a strong name

当我将签名属性的解决方案设置从选中更改为未选中时,我没有得到此错误。现在我不想更改对解决方案设置的签名属性所做的任何设置并修复此错误。有人能帮我解决这个错误吗?

下载swagger.net到web Api项目后,我得到Assembly生成失败的错误

您的程序集是强命名的,而您最近引用的新程序集不是。更重要的是,它们不是从源代码编译的(你可以通过NuGet获得它们)。

我现在想到了两个变通办法:

  1. 获取SwaggerUI和依赖项的源代码,并用您的密钥对它们进行签名。我认为这是一个乏味的过程,因为你需要构建所有的东西。
  2. 像现在这样使用dll并在每次构建之后签名。例如,您可以使用这些指令(反汇编,签名&重新组装)。如果你这样做,我认为值得将其作为预构建步骤添加到最不依赖的项目(首先构建的项目)。
  3. 我也发现了这个-汇编强命名工具包(用于NuGet)。从未尝试过,但也许值得研究一下,因为它似乎是为您的情况设计的。