Swagger
ABP中已经集成了Swagger
1.首先介绍的是ABP中Swagger,支持动态映射应用层,也就是,无需创建控制器。
前提:要在Web.Core配置
//这是配置ap框架本身的application
Configuration.Modules.AbpAspNetCore()
.CreateControllersForAppServices(
typeof(AbpProjectApplicationModule).GetAssembly()
);
//向swagger中动态生成api测试
//BizMasterDataApplicationModule这是自己封装的application
Configuration.Modules.AbpAspNetCore()
.CreateControllersForAppServices(
typeof(BizMasterDataApplicationModule).GetAssembly()
);
2.配置工程XML
3.找到starpup.cs
在配置文件中配置刚刚的xml的名称
public IServiceProvider ConfigureServices(IServiceCollection services)
{
services.AddSwaggerGen(options =>
{
//ShawnWong 获取程序运行根路径
//Swagger注解xml生成到更目录,xml文件名在配置中
var currentExecutingPath = System.AppDomain.CurrentDomain.BaseDirectory;
var xmlNameConfig = _appConfiguration["App:SwaggerXmlName"];
//此配置可直接映射application层也可以映射host中控制器那层
//所有可能出现多个xml name
//存在多个配置
if (xmlNameConfig.Contains('&'))
{
foreach (var item in xmlNameConfig.Split('&'))
{
options.IncludeXmlComments($"{currentExecutingPath}/{item}",true);
}
}
}
}
至此启动运行即可