Skip to content

Swagger

L edited this page Apr 8, 2019 · 4 revisions

基本使用

.NET Core使用swagger进行API接口文档管理

遇到500报错

Internal Server Error /swagger/v1/swagger.json

2
需要给所有controller/action做定义[NoAction] or [HttpXXX]
遇到这种情况,可以通过 http://your host/swagger/v1/swagger.json 查看详细报错信息
参考资料:ASP.NET Core - Swashbuckle not creating swagger.json file

设置注释

接口项目,右键属性,勾选生成xml文件
设置xml文件路径

options.IncludeXmlComments(xmlFilePath);

以ABP for .net core项目举例 .Application项目勾选生成xml文件
1
在Startup.cs中配置xml文件

public class Startup
{
    public IServiceProvider ConfigureServices(IServiceCollection services)
    {
	services.AddSwaggerGen(options =>
	{
		//......
		//设置xml注释文件
		var baseDirectory = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().CodeBase); ;
		var xmlFileName = "\\" + typeof(XXXApplicationModule).Assembly.GetName().Name + ".XML";
		var xmlFilePath = $"{baseDirectory}{xmlFileName}";
		options.IncludeXmlComments(xmlFilePath);
		//......
	});
    }
}

示例代码

示例代码

参考资料

webapi文档描述-swagger

Clone this wiki locally