文档章节

用Swashbuckle给ASP.NET Core的项目自动生成Swagger的API帮助文档

AA海纳百川
 AA海纳百川
发布于 2016/08/18 15:50
字数 352
阅读 100
收藏 0

Swagger 是一个描述RESTful的Web API的规范和框架。如果使用ASP.NET的话,可以用 Swashbuckle 来自动生成Swagger。下面详细的介绍一下如何给ASP.NET Core的项目自动生成Swagger的API帮助文档。

创建ASP.NET Core的Web API Controller

在Visual Studio 2015中创建一个ASP.NET Core的项目,点击添加“New Item”,“Server-side”,“Web API Controller Class”。Visual Studio会帮我们自动创建一个如下的文件,实现了一个标准的RESTful的Web API。

[Route("api/[controller]")]
public class ValuesController : Controller
{
    // GET: api/values
    [HttpGet]
    public IEnumerable<string> Get()
    {
        return new string[] { "value1", "value2" };
    }

    // GET api/values/5
    [HttpGet("{id}")]
    public string Get(int id)
    {
        return "value";
    }

    // POST api/values
    [HttpPost]
    public void Post([FromBody]string value)
    {
    }

    // PUT api/values/5
    [HttpPut("{id}")]
    public void Put(int id, [FromBody]string value)
    {
    }

    // DELETE api/values/5
    [HttpDelete("{id}")]
    public void Delete(int id)
    {
    }
}

添加Swashbuckle的Nuget包

打开 project.json 文件,添加Swashbuckle的依赖 Swashbuckle.SwaggerGen和 Swashbuckle.SwaggerUi 。注意我们要使用6.0的版本,这是针对ASP.NET Core的。它的github地址 Ahoy 也和之前的版本不一样了。

"dependencies": {
  .........
  "Swashbuckle.SwaggerGen": "6.0.0-beta902",
  "Swashbuckle.SwaggerUi": "6.0.0-beta902"
},

在 Startup.cs 中配置Swashbuckle

public void ConfigureServices(IServiceCollection services)
{
    // ...
    services.AddSwaggerGen();
    // ...
}

public void Configure(IApplicationBuilder app)
{
    // ...
    app.UseSwaggerGen();
    app.UseSwaggerUi("help"); // API文档的地址,默认是 /swagger/ui
    // ...
}

运行项目,查看API文档,也能直接测试

万事俱备,运行项目,打开地址,就能看到如下的API文档了,还能直接在这里测试Web API。

本文转载自:http://fresky.github.io/2016/06/08/use-swashbuckle-to-add-swagger-api-help-for-asp-net-core/?utm_sou

AA海纳百川
粉丝 6
博文 53
码字总数 4829
作品 0
南宁
程序员
私信 提问
加载中

评论(1)

AA海纳百川
AA海纳百川
主要是在网上的其他转载的修改了
project.json引用代码应该是,
"Swashbuckle.SwaggerGen": "6.0.0-beta902",
"Swashbuckle.SwaggerUi": "6.0.0-beta902"
asp.net core系列 37 WebAPI 使用OpenAPI (swagger)中间件

一.概述   在使用Web API时,对于开发人员来说,了解其各种方法可能是一项挑战。在ASP.NET Core上,Web api 辅助工具介绍二个中间件,包括:Swashbuckle和NSwag .NET。本篇先讲Swashbuckle...

花阴偷移
03/05
0
0
Swagger 在asp.net core中的应用2

Swagger是一个把api和注释生成一个可视(或可访问)的输出工具,关且还可以进行手工测试我们的api,解决了程序不想写文档的问题(哈哈)。 Swashbuckle.AspNetCore是用来解决asp.net core下的...

桂素伟
2017/03/04
0
0
ASP.NET Core WebApi使用Swagger生成api说明文档看这篇就够了

引言 在使用asp.net core 进行api开发完成后,书写api说明文档对于程序员来说想必是件很痛苦的事情吧,但文档又必须写,而且文档的格式如果没有具体要求的话,最终完成的文档则完全取决于开发...

依乐祝
2018/06/28
0
0
使用 Swagger UI 与 Swashbuckle 创建 RESTful Web API 帮助文

作者:Sreekanth Mothukuru2016年2月18日 本文旨在介绍如何使用常用的 Swagger 和 Swashbuckle 框架创建描述 Restful API 的交互界面,并为 API 用户提供丰富的探索、文件和操作体验。 源代码...

OneAPM蓝海讯通
2016/04/14
259
0
使用Swagger 搭建高可读性ASP.Net WebApi文档

一、前言 在最近一个商城项目中,使用WebApi搭建API项目。但开发过程中,前后端工程师对于沟通接口的使用,是非常耗时的。之前也有用过Swagger构建WebApi文档,但是API文档的可读性并不高。尤...

沉淀的风
2018/08/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

[转载]What Your Computer Does While You Wait

What Your Computer Does While You Wait https://manybutfinite.com/post/what-your-computer-does-while-you-wait/ Dec 1st, 2008 This post takes a look at the speed - latency and thr......

MtrS
6分钟前
0
0
springmvc的return “success”源码解读

qqqq

architect刘源源
今天
4
0
Java程序员五面阿里分享 逆袭成功 太不容易了!

前言 拿到阿里实习offer,经历了5次面试,其中4轮技术面,1轮HR面试。在这里分享一下自己的面试经验和学习心得。希望能够帮助更多的小伙伴。 我本科毕业于中南大学信管专业,真正开始学习Jav...

别打我会飞
昨天
4
0
Android Camera模块解析之视频录制

《Android Camera架构》 《Android Camera进程间通信类总结》 《Android Camera模块解析之拍照》 《Android Camera模块解析之视频录制》 《Android Camera原理之CameraDeviceCallbacks回调模...

天王盖地虎626
昨天
2
0
手把手教你使用issue作为博客评论系统

自从上周在阮一峰的 每周分享第 60 期 看到了可以将 GitHub 的 issue 当作评论系统,插入第三方网页的 JS 库——utterances。我就对此“魂牵梦绕”。个人博客使用的是VuePress。 TLDR (不多废...

jump--jump
昨天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部