Swagger UI教程


文檔源地址 http://www.68idc.cn/help/makewebs/qitaasks/20160621620667.html

 

Swagger-UI本身只提供在線測試功能,要集成它還需要告訴它本項目提供的各種服務和參數信息。這里就需要一些工作量了,不過好在許多第三方庫已經給我們完成了這一工作。我這里用的是Swashbuckle,使用它也比較簡單,直接使用Nuget添加其程序包即可:

   1、初始化包  PM> Install-Package Swashbuckle

增加該程序包時,它本身會把自己相應的一些注冊的代碼添加到項目中,雖然我們可以不太關心這些操作,但有的時候還是需要修改一些相關的配置的。

2、初始化包后App_Start會添加 ,SwaggerConfig 代碼如下:

 

using System.Web.Http;
using WebActivatorEx;
using WebApp;
using Swashbuckle.Application;

[assembly: PreApplicationStartMethod(typeof(SwaggerConfig), "Register")]

namespace WebApp
{
    public class SwaggerConfig
    {
        public static void Register()
        {
            var thisAssembly = typeof(SwaggerConfig).Assembly;

            GlobalConfiguration.Configuration
                .EnableSwagger(c =>
                    {
                        c.SingleApiVersion("v1", "WebApp");


                    })
                .EnableSwaggerUi(c =>
                {
                    GetXmlCommentsPath();
                });
        }
        private static string GetXmlCommentsPath()
        {
            return $@"{System.AppDomain.CurrentDomain.BaseDirectory}\bin\WebApi.XML";
        }
    }
}

 

 

3、集成XML注釋

api 應用 ->右鍵->屬性->生成->輸出-配置XML

 

4、運行程序  地址欄請求:http://localhost:5746/swagger/       逼格很高啊


 

到此第一種方法完成   

 

 

開始改造第一種方法   刪除SwaggerConfig    ,修改Startup 代碼如下:

 

public partial class Startup
    {
        public void Configuration(IAppBuilder app)
        {
            ConfigureAuth(app);
            HttpConfiguration config = new HttpConfiguration();
            WebApiConfig.Register(config);
            config.EnableSwagger(c =>
            {
                c.SingleApiVersion("v1", "WebAPI");
                c.IncludeXmlComments(GetXmlCommentsPath());
                c.ResolveConflictingActions(x => x.First());

            }).EnableSwaggerUi();

            app.UseWebApi(config);
        }

        private static string GetXmlCommentsPath()
        {
            return $@"{System.AppDomain.CurrentDomain.BaseDirectory}\bin\WebApi.XML";
        }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM