Swagger 不支持次要版本 ASP.NET Webapi
Swagger not supporting minor versions ASP.NET Webapi
我正在开发一个支持多个版本的webapi。目前我有三个版本 1.0、1.1 和 2.0。我已经在 swagger 中完成了多版本支持的解决方案,并从下面 link
实现了它
代码工作正常,但问题是 swagger 没有加载 1.1 版。它适用于 1.0 和 2.0 版。
提前致谢。
找出解决方案。这是由于 swagger.config 实例问题。通过在 swagger.config 中添加程序集 [assembly: PreApplicationStartMethod(typeof(SwaggerConfig), "Register")]
并将所有版本控制代码移至 webapi.config 来解决。不知道为什么必须这样做才能使次要版本工作,但它对我有用。
对我来说,http://localhost:64754/swagger/docs/v1.1
会 return 404 错误,而 http://localhost:64754/swagger/docs/v1
或 http://localhost:64754/swagger/docs/v2
工作正常。
我修复它的方法是将其添加到 web.config
:
<system.webServer>
<modules>
<remove name="UrlRoutingModule-4.0" />
<add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition="" />
</modules>
...
</system.webServer>
我正在开发一个支持多个版本的webapi。目前我有三个版本 1.0、1.1 和 2.0。我已经在 swagger 中完成了多版本支持的解决方案,并从下面 link
实现了它代码工作正常,但问题是 swagger 没有加载 1.1 版。它适用于 1.0 和 2.0 版。
提前致谢。
找出解决方案。这是由于 swagger.config 实例问题。通过在 swagger.config 中添加程序集 [assembly: PreApplicationStartMethod(typeof(SwaggerConfig), "Register")]
并将所有版本控制代码移至 webapi.config 来解决。不知道为什么必须这样做才能使次要版本工作,但它对我有用。
对我来说,http://localhost:64754/swagger/docs/v1.1
会 return 404 错误,而 http://localhost:64754/swagger/docs/v1
或 http://localhost:64754/swagger/docs/v2
工作正常。
我修复它的方法是将其添加到 web.config
:
<system.webServer>
<modules>
<remove name="UrlRoutingModule-4.0" />
<add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition="" />
</modules>
...
</system.webServer>