首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找不到Swashbuckle.AspNetCore SwaggerOperation属性

找不到Swashbuckle.AspNetCore SwaggerOperation属性
EN

Stack Overflow用户
提问于 2018-08-23 03:59:28
回答 2查看 17K关注 0票数 20

我正在尝试使用由Swashbuckle.AspNetCore (3.0.0)创建的Autorest和Swagger文档来生成REST API客户端。

生成的swagger文档似乎是正确的,除了操作名称并不是很好。

代码语言:javascript
复制
"/api/Addresses/{id}": {
      "get": {
        "tags": [ "Address" ],
        "operationId": "ApiAddressesByIdGet",
        "consumes": [],
        "produces": [],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "type": "string",
            "format": "uuid"
          }
        ],
        "responses": { "200": { "description": "Success" } }
      },

我在许多文章和SwashBuckle.AspNetCore的官方文档中看到,我可以使用属性来修饰我的控制器方法,如下所示:

代码语言:javascript
复制
[HttpGet]
[Produces("application/json")]
[ProducesResponseType((int)HttpStatusCode.NotFound)]
[ProducesResponseType(typeof(List<AddressDto>), (int)HttpStatusCode.OK)]
[SwaggerOperation("GetAllAdresses")]
public async Task<IActionResult> GetAllAsync()
{
   ....
}

不幸的是,我得到了一个错误:

找不到

SwaggerOperationAttribute

我验证了安装的NuGet包,它们是:

  • SwashBuckle.AspNetCore.Swagger (3.0.0)
  • SwashBuckle.AspNetCore.SwaggerGen (3.0.0)
  • SwashBuckle.AspNetCore.SwaggerUI (3.0.0)

我该如何解决这个问题?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-08-23 04:12:08

我今天遇到了这个。我需要添加以下nuget包,该包是刚刚为v3.0.0添加的:

Swashbuckle.AspNetCore.Annotations

here描述了突破性的变化

还请注意,您需要将以下内容添加到Startup.cs或Swagger扩展中:

代码语言:javascript
复制
AddSwaggerGen(c => { ... c.EnableAnnotations(); })
票数 40
EN

Stack Overflow用户

发布于 2019-01-22 01:14:48

另一种选择是为HttpGet过滤器设置Name属性,如下所示:

代码语言:javascript
复制
[HttpGet(Name = "GetAllAdresses")]
[Produces("application/json")]
[ProducesResponseType((int)HttpStatusCode.NotFound)]
[ProducesResponseType(typeof(List<AddressDto>), (int)HttpStatusCode.OK)]
[SwaggerOperation("GetAllAdresses")]
public async Task<IActionResult> GetAllAsync()
{
   ....
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51974264

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档