1.swagger error 有詳細的錯誤信息
- 自己根據詳細信息找問題
2.swagger error 無詳細的錯誤信息
- Controller是否重名=》重名,指定不同的 [Route("*****")]
- Controller必須制定 [HttpPost] 或者 [HttpGet]
3.swagger無注釋
- 引用項目,依次執行如下操作
- 項目=》屬性=》生成:輸出:XML文檔文件,指定至固定目錄
- webapi項目,添加鏈接文件(上一步的xml文件)
- 鏈接文件,依次執行如下操作
- 屬性=》生成=》始終復制
- Startup.cs中的 ConfigureServices(IServiceCollection services)中,添加如下代碼:
services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new Info { Title = "Platform.Service.Enterprise.WebApi API", Version = "v1.0.0.0" }); c.DescribeAllEnumsAsStrings(); var basePath = PlatformServices.Default.Application.ApplicationBasePath; var docPath = Path.Combine(basePath, "Docs"); var docs = XMLUtil.CreateXPathDocumentsFromDirectory(docPath); docs.ForEach(xp => c.IncludeXmlComments(() => { return xp; })); });
- Startup.cs中的 Configure(IApplicationBuilder app, IHostingEnvironment env)中,添加如下代碼:
app.UseSwagger(); // Enable middleware to serve swagger-ui (HTML, JS, CSS, etc.), specifying the Swagger JSON endpoint. app.UseSwaggerUI(c => { c.SwaggerEndpoint("/swagger/v1/swagger.json", "Platform Enterprise WebApi API"); });
- 重新生成解決方案