1. 程式人生 > 實用技巧 >C# 介面生成工具Swagger用法

C# 介面生成工具Swagger用法

1,新建一個WebApi專案

2,專案開啟之後,引用--》右鍵--》管理NuGet程式包

3,按賬好之後,右鍵專案--》屬性--》生成 輸出勾選:XML文件檔案,如果沒有自動填充好路徑,需要自己填寫一下,檔名可以自己取

4,開啟App_Start資料夾下的SwaggerConfig.cs檔案,新增一個如下方法:

5,搜尋GetXmlCommentsPath,下面能搜到已經註釋了,自己把註釋放開,要是沒搜到,就自己手動寫一下c.IncludeXmlComments(GetXmlCommentsPath());注意要寫在register方法裡面

6,開啟valuescontroller,自己寫一些註釋

7,執行專案,在根路徑後面直接加swagger,就會自動跳轉到文件,如:http://localhost:8970/swagger,能看到我們寫的一些註釋

8,在實際應用中,完全使用webapi的restful風格的api設計是比較少見的,請求方式一般也只使用get請求和post請求,所以我們做一些修改,使用的是類似restful風格的api設計,修改一下webapi的路由配置

9,在Controllers中新增一個TestController.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Web;
using System.Web.Http;

namespace 介面生成工具Swagger.Controllers
{
    public class TestController:ApiController
    {
        /// <summary>
        /// get列表
        /// </summary>
        /// <returns></returns>
        public IEnumerable<string> Get()
        {
            return new string[] { "value1", "value2" };
        }

        /// <summary>
        /// get請求
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public string Get(int id)
        {
            return "value";
        }

        /// <summary>
        /// post請求
        /// </summary>
        /// <param name="token"></param>
        /// <param name="model"></param>
        /// <returns></returns>
        //public HttpResponseMessage Post(string token, [FromBody]UserModel model)
        //{
        //    CookieHelper.SetUserCookie(model);
        //    string strResult = "{\"UserName\": \"" + model.UserName + "\", \"Pwd\": \"" + model.Pwd + "\"}";
        //    return new HttpResponseMessage(System.Net.HttpStatusCode.OK)
        //    {
        //        Content = new StringContent(strResult, Encoding.UTF8, "text/json")
        //    };
        //}
    }
}

  10,執行 輸入http://localhost:64956/api/Test/Get

參考:https://segmentfault.com/a/1190000019013402