技术分析

jsfx
数据可视化技术分析

集成Swagger接口文档分组配置.net core

技术分析1872年前 (2019-10-31)大数据

(一)回顾:

上一篇为大家介绍了在.NET Core中如何集成Swagger的介绍,想想集成操作其实非常简单便捷,实质就三个步骤:

(1)在项目中执行nuget命令,拉取Swagger包到项目:Install-package Swashbuckle.AspNetCore

(2)在ConfigureServices方法中新增如下代码

复制代码
#region Swagger
    services.AddSwaggerGen(c =>
    {
        c.SwaggerDoc("v1", new Info
        {
            Version = "v1.1.0",
            Title = "Swagger WebAPI",
            Description = "XXX项目API文档",
            TermsOfService = "None",
            Contact = new Swashbuckle.AspNetCore.Swagger.Contact
            {
                Name = "XXX项目",
                Email = "273145719@qq.com"
            ,
                Url = "https://www.cnblogs.com/NBIDataVis/"
            }
        });        // 为 Swagger JSON and UI设置xml文档注释路径
        var basePath = Path.GetDirectoryName(typeof(Program).Assembly.Location);        var xmlPath = Path.Combine(basePath, "CoreWebAPI.xml");        //如果需要显示控制器注释只需将第二个参数设置为true
        c.IncludeXmlComments(xmlPath, true);
    });#endregion
复制代码

(3)在Configure方法中新增如下代码

复制代码
#region Swagger
    app.UseSwagger();
    app.UseSwaggerUI(c =>
    {
      c.SwaggerEndpoint("/swagger/v1/swagger.json", "ApiDocument V1");
    });#endregion
复制代码

(二)问题:

通常一个项目中有很多的功能模块,每个功能模块又可能对应很多的接口,如果所有的接口都在一个列表显示,显然是比较混乱的,不便于调用方阅读和查找。

当然Swagger为我们已经考虑到了这一点,它能支持分组显示,具体怎么做呢,请看下面的配置:

(三)Swagger分组文档配置:

(1)在ConfigureServices方法中新增如下代码

复制代码
#region Swagger
    services.AddSwaggerGen(c =>
    {
        c.SwaggerDoc("v1", new Info
        {
            Version = "v1.1.0",
            Title = "Swagger WebAPI",
            Description = "XXX项目API文档",
            TermsOfService = "None",
            Contact = new Swashbuckle.AspNetCore.Swagger.Contact
            {
                Name = "XXX项目",
                Email = "273145719@qq.com"
            ,
                Url = "https://www.cnblogs.com/NBIDataVis/"
            }
        });
        
        c.SwaggerDoc("User", new Info { Title = "用户模块", Version = "User" });   //分组显示
        c.SwaggerDoc("Project", new Info { Title = "项目模块", Version = "Project" });   //分组显示

        var basePath = Path.GetDirectoryName(typeof(Program).Assembly.Location);        var xmlPath = Path.Combine(basePath, "CoreWebAPI.xml");
        c.IncludeXmlComments(xmlPath, true);
    
    });#endregion
复制代码

(2)在Configure方法中新增如下代码

复制代码
#region Swagger
    app.UseSwagger();
    app.UseSwaggerUI(c =>
    {
        c.SwaggerEndpoint("/swagger/v1/swagger.json", "ApiHelp V1");
        c.SwaggerEndpoint("/swagger/User/swagger.json", "用户模块");  //分组显示
        c.SwaggerEndpoint("/swagger/Project/swagger.json", "项目模块");  //分组显示    });#endregion
复制代码

(3)在Controller类上指定分组名:


 

(4)看看运行效果:


扫描二维码至手机访问

扫描二维码推送至手机访问。

版权声明:本文由策意data发布,如需转载请注明出处。

转载请注明出处:http://dsj.ceyicm.cn/reed/33.html

分享给朋友:

相关文章

将.NET Core编写的数据可视化项目打包成Docker镜像,实现容器化部署

将.NET Core编写的数据可视化项目打包成Docker镜像,实现容器化部署

第一步 环境准备,安装docker环境:1234567891011通过命令安装docker:sudo apt-get install -y docker.io 启动Docker服务...

实战:SpringBoot+KafKa实现生产者和消费者功能

实战:SpringBoot+KafKa实现生产者和消费者功能

1.配置pom包<dependency>  <groupId>org.springframework.kafka</groupId>  <...

将本地构建好的docker镜像发布到dockerhub

将本地构建好的docker镜像发布到dockerhub

各位读者你们好,上一篇文章介绍了如何将.NET Core项目构建成一个docker镜像,那么今天接下来我们介绍如何将本地docker项目镜像发布到dockerhub上,好了废话不多说,直接进入正题:(...

从dockerhub拉取NBI可视化产品镜像

从dockerhub拉取NBI可视化产品镜像

前两篇文章介绍了将docker镜像打包,镜像发布,那么今天为大家介绍完一个闭环操作,如何从dockerhua拉取镜像,运行镜像,下面将演示从ubuntu和centos系统上拉取和运行镜像操作:操作流程...

如何利用ElasticSearch群集搭建,实现高可用

如何利用ElasticSearch群集搭建,实现高可用

ElasticSearch简介:ElasticSearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。充分利用ElasticSearch的水平...

.NET Core中使用OOM框架,AutoMapper的使用介绍

.NET Core中使用OOM框架,AutoMapper的使用介绍

(一)什么是OOM:OOM顾名思义,Object-Object-Mapping实体间相互转换,AutoMapper其意义在于帮助你无需手动的转换简单而又麻烦的实体间关系。(二)AutoMapper是什...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
每一次合作都多一位朋友

体验账号:administrator 密码:administrator

  • 7X12小时
    7X12小时

    专家1V1服务

  • 业务保障
    业务保障

    扎实数据根基

  • 合作伙伴
    合作伙伴

    NBIDataVis

  • 强大交付
    强大交付

    实现客户价值