本文是配置WebApi與Swagger UI,能夠參照 http://www.cnblogs.com/farb/p/ABPSwaggerUIIntegration.htmlhtml
1. 安裝swagger nuget包web
首先,將Swagger安裝到WebApi項目中。咱們安裝到WebApi類庫中,包爲 Install-Package Swashbuckle.Core,以下:api
2. 配置 WebApiModuleapp
咱們打開WebApi類庫下面的WebApiModule類,由於咱們的項目叫MyThirdABP,因此類叫MyThirdABPWebApiModule。ide
首先,在類裏面加入方法:ui
public override void PreInitialize() { Configuration.Modules.AbpWeb().AntiForgery.IsEnabled = false; base.PreInitialize(); }
private void ConfigureSwaggerUi() { Configuration.Modules.AbpWebApi().HttpConfiguration .EnableSwagger(c => { c.SingleApiVersion("v1", "SwaggerIntegrationDemo.WebApi"); c.ResolveConflictingActions(apiDescriptions => apiDescriptions.First()); //將application層中的註釋添加到SwaggerUI中 var baseDirectory = AppDomain.CurrentDomain.BaseDirectory; var commentsFileName = "bin\\MyThirdABP.Web.XML"; var commentsFile = Path.Combine(baseDirectory, commentsFileName); //將註釋的XML文檔添加到SwaggerUI中 c.IncludeXmlComments(commentsFile); }) .EnableSwaggerUi(); }
而後,在Initialize方法中,調用ConfigureSwaggerUi的方法。spa
public override void Initialize() { IocManager.RegisterAssemblyByConvention(Assembly.GetExecutingAssembly()); Configuration.Modules.AbpWebApi().DynamicApiControllerBuilder .ForAll<IApplicationService>(typeof(MyThirdABPApplicationModule).Assembly, "app") .Build(); ConfigureSwaggerUi(); }
代碼已經完畢,可是咱們要注意的一點,咱們看到ConfigureSwaggerUi方法裏面,commentsFileName變量是指定路徑的。因此咱們要在路徑下面作一些配置。code
選中Web項目,而後右鍵屬性—>生成—>輸出—>勾選 XML文檔文件,而且把內容複製到commentsFileName變量中。htm
3. 運行Swaggerblog
首先,咱們將web設爲啓動項目。在路徑後面加入 /swagger/ui/index,以下:
到此,啓動成功。
能夠關注本人的公衆號,多年經驗的原創文章共享給你們。