久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

NetCore 配置Swagger的詳細代碼

瀏覽:248日期:2022-06-08 17:46:15
目錄
  • 1.添加Nuget
  • 2.添加靜態類擴展方法
  • 3.StartUp注冊服務,添加中間件

1.添加Nuget

install-package Swashbuckle.AspNetCore -project XXX -version 6.4.0

2.添加靜態類擴展方法

2.1.生成項目xml:選中項目 / 右鍵 / 屬性 / 生成 / 輸出 / 選中xml文檔文件

2.2.system_v1:必須唯一不重復,且【options.SwaggerDoc("system_v1"】必須與【options.SwaggerEndpoint("/swagger/system_v1/】一致,不然會異常【Failed to load API definition; Fetch error: response status is 404 /swagger/system_v1/swagger.json】

/// <summary>
    /// Swagger 靜態類
    /// </summary>
    public static class SwaggerExtend
    {
/// <summary>
/// 添加服務: swagger
/// </summary>
/// <param name="services"></param>
/// <returns></returns>
public static void AddCustSwagger(this IServiceCollection services)
{
    var version = "V1.0";
    var apiName = "XXX系統";
    services.AddSwaggerGen(options =>
    {
options.ResolveConflictingActions(apiDescriptions => apiDescriptions.First());

options.SwaggerDoc("system_v1", new OpenApiInfo
{
    Version = version,
    Title = $"{apiName} API",
    Description = $"{apiName} {version} 接口服務"
});

//  獲取應用程序所在目錄
var basePath = Path.GetDirectoryName(typeof(SwaggerExtend).Assembly.Location);
var xmlPath = Path.Combine(basePath, "ProjectName.xml");
//  swagger界面默認只顯示 方法&字段 注釋,不顯示 控制器注釋
//  第二個參數為true, 則是controller的注釋
//options.IncludeXmlComments(xmlPath);
options.IncludeXmlComments(xmlPath, true);
    });
}

/// <summary>
/// 添加中間件: swagger
/// </summary>
/// <param name="app"></param>
public static void UseCustSwagger(this IApplicationBuilder app)
{
    app.UseSwagger();
    app.UseSwaggerUI(options =>
    {
options.SwaggerEndpoint("/swagger/system_v1/swagger.json", "系統API");
//  默認路徑為:/swagger/index.html
//  路由前綴 - 設置為空,可直接跳轉到swagger頁面:/index.html
//  api測試可設置為空,部署時容易與前端路由沖突
options.RoutePrefix = string.Empty;
    });
}
    }

3.StartUp注冊服務,添加中間件

public void ConfigureServices(IServiceCollection services)
{
    services.AddCustSwagger();
}

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    app.UseCustSwagger();
}

到此這篇關于NetCore 配置Swagger的的文章就介紹到這了,更多相關NetCore 配置Swagger內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

標簽: ASP.NET
主站蜘蛛池模板: 宜都市| 宜宾市| 万全县| 睢宁县| 铁岭市| 黑龙江省| 吉林省| 通河县| 临朐县| 化德县| 昆山市| 盐津县| 稷山县| 元氏县| 禹城市| 澎湖县| 邵武市| 贺州市| 板桥市| 宝山区| 禹城市| 宜昌市| 莱阳市| 广水市| 南康市| 将乐县| 当阳市| 南昌市| 南汇区| 喀喇沁旗| 江阴市| 长武县| 德庆县| 光泽县| 时尚| 仙桃市| 阿勒泰市| 哈密市| 济宁市| 勃利县| 札达县|