微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

WebApi 通过自定义标头 (Microsoft.AspNet.WebApi.Versioning & Swagger) 进行版本控制,不会为使用相同路由的端点生成 Swagger 文档

如何解决WebApi 通过自定义标头 (Microsoft.AspNet.WebApi.Versioning & Swagger) 进行版本控制,不会为使用相同路由的端点生成 Swagger 文档

我正在尝试使用 Microsoft.AspNet.WebApi.Versioning 对我的 WebApi 端点进行版本控制。 我向控制器添加了 [ApiVersion] 属性

enter image description here

我配置了 SwaggerConfig.cs 如下:

enter image description here

...

enter image description here

WebApiConfig.cs

enter image description here

其中两个端点具有相同的路由“users/all”一个在“v1”控制器中,另一个在“v2”控制器中

一切顺利,我能够到达包含相同路由的两个不同端点用户/所有人)通过 POSTMAN 应用, 传递“api-version”自定义标头。

问题是,当我尝试通过 Swagger UI 执行此操作时,它没有在 UI 中识别“v2”端点,因此,我无法尝试它通过 Swagger UI, 而且,我无法通过 AutoRest 生成“v2”端点客户端

总结:对于具有相同路由(用户/所有)的端点,我无法生成 Swagger UI 的文档或 AutoRest 客户端类, 通过自定义标头对 webapi 进行版本控制时。

你们能帮我吗?提前致谢。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。