【Swagger】初级使用

本文档详细介绍了如何在WebApi项目中配置Swagger,包括添加Swashbuckle和Swagger.Net.UI包,删除冗余文件,配置SwaggerConfig,实现语言汉化,添加控制器注释,插入HTTP请求头,以及简单的界面样式定制。适合初学者快速上手。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Swagger自动生成在线文档


前言:记一次Swagger的简单使用,包含添加语言汉化、控制器注释、HTTP请求头添加

完整示例
完整示例

1、新建项目WebApi,并添加nuget包引用:Swashbuckle 和 Swagger.Net.UI

需要添加的两个nuget包​​​​​​

2、删除Swagger.Net包等多余文件

1、此包是Swagger.Net.UI包添加时附带的依赖项,由于与Swashbuckle功能重复,所以需要删除

2、删除SwaggerUi文件夹及下属文件,资源文件已重复存在,直接删除这个文件夹

3、删除App_Start文件夹中SwaggerNet.cs文件,此文件与WebApiConfig.cs功能重复,并可能产生冲突

3、配置SwaggerConfig.cs文件

SwaggerConfig文件中配置信息如下

 /// <summary>
        /// 注册Swagger
        /// </summary>
        public static void Register()
        {
            var thisAssembly = typeof(SwaggerConfig).Assembly;
            var xmlFile = string.Format("{0}/bin/ZTcms.WebApi.xml", System.AppDomain.CurrentDomain.BaseDirectory);

            GlobalConfiguration.Configuration
                .EnableSwagger(c =>
                    {
                        // 用于启用和设置Swagger的配置信息。
                        c.SingleApiVersion("v1", "ZTcms.WebApi");
                        //获取项目指定路径下xml文件
                        c.IncludeXmlComments(xmlFile);
                        //c.ResolveConflictingActions(apiDescriptions => apiDescriptions.First());
                        //用于Controller控制器的注释信息展示
                        c.CustomProvider((defaultProvider) => new SwaggerExtensions(defaultProvider, xmlFile));
                        //用于请求头过滤器加载
                        c.OperationFilter<SwaggerHeaderFilter>();
                    })
                .EnableSwaggerUi(c =>
                    {
                        //路径规则,项目命名空间.文件夹名称.js文件名称
                        c.InjectJavaScript(thisAssembly, "ZTcms.WebApi.Scripts.swaggerui.swagger_lang.js");
                    });
        }

代码写完后,右击解决方案的当前项目属性,在生成栏目中,生成XML

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值