一、在Startup中进行配置以及调用
#region swagger接口帮助文档 在ConfigureServices中注册服务
services.AddHttpClient();
services.AddSingleton();
services.AddHostedService();
if (configuration["tencentIM:syncMessage"] == "1")
{
services.AddHostedService();
}
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new OpenApiInfo
{
Title = "接口名称-自定义",
Version = "v1.0",
Description = "框架说明文档"
}
);
// 为 Swagger 设置xml文档注释路径
var basePath = AppContext.BaseDirectory;
//var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
//当前接口目录下生成该文件 bin\Debug\netcoreapp3.1\MyDemo.WebApi.xml
var xmlPath = Path.Combine(basePath, "MyDemo.WebApi.xml");
if (File.Exists(xmlPath))
{
c.IncludeXmlComments(xmlPath, true);
}
//当前接口目录下生成该文件 bin\Debug\netcoreapp3.1\MyDemo.Data.xml
var xmlModelPath = Path.Combine(basePath, "MyDemo.Data.xml");
if (File.Exists(xmlModelPath))
{
c.IncludeXmlComments(xmlModelPath);
}
});
}
#endregion
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
}
app.UseRouting();
//将中间件添加到管道中
app.UseSwagger();
app.UseSwaggerUI(option =>
{
option.SwaggerEndpoint("/swagger/v1/swagger.json", "MyDemo-API");
});
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
});
}
二、配置XML文档的输出路径-右击项目-生成标志