Skip to content

Commit 66d37a8

Browse files
committed
allow to show summaries on swagger
It is optional. You can set `Swagger:ShowSummariesOnSwagger` to true on appsettings.json to enable it. (default false)
1 parent eb97a61 commit 66d37a8

File tree

5 files changed

+26
-4
lines changed

5 files changed

+26
-4
lines changed

aspnet-core/src/AbpCompanyName.AbpProjectName.Application/AbpCompanyName.AbpProjectName.Application.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
<GenerateAssemblyCompanyAttribute>false</GenerateAssemblyCompanyAttribute>
1111
<GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute>
1212
<RootNamespace>AbpCompanyName.AbpProjectName</RootNamespace>
13+
<GenerateDocumentationFile>true</GenerateDocumentationFile>
1314
</PropertyGroup>
1415

1516
<ItemGroup>

aspnet-core/src/AbpCompanyName.AbpProjectName.Web.Core/AbpCompanyName.AbpProjectName.Web.Core.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
<OpenApiGenerateDocuments>false</OpenApiGenerateDocuments>
1818
<RootNamespace>AbpCompanyName.AbpProjectName</RootNamespace>
1919
<LangVersion>7.2</LangVersion>
20+
<GenerateDocumentationFile>true</GenerateDocumentationFile>
2021
</PropertyGroup>
2122

2223
<ItemGroup>

aspnet-core/src/AbpCompanyName.AbpProjectName.Web.Host/AbpCompanyName.AbpProjectName.Web.Host.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
1212
<GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType>
1313
<LangVersion>7.2</LangVersion>
14+
<GenerateDocumentationFile>true</GenerateDocumentationFile>
1415
</PropertyGroup>
1516

1617
<ItemGroup>

aspnet-core/src/AbpCompanyName.AbpProjectName.Web.Host/Startup/Startup.cs

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
using Microsoft.Extensions.Hosting;
2020
using Microsoft.OpenApi.Models;
2121
using Newtonsoft.Json.Serialization;
22+
using System.IO;
2223

2324
namespace AbpCompanyName.AbpProjectName.Web.Host.Startup
2425
{
@@ -53,8 +54,6 @@ public IServiceProvider ConfigureServices(IServiceCollection services)
5354
};
5455
});
5556

56-
57-
5857
IdentityRegistrar.Register(services);
5958
AuthConfigurer.Configure(services, _appConfiguration);
6059

@@ -109,6 +108,23 @@ public IServiceProvider ConfigureServices(IServiceCollection services)
109108
In = ParameterLocation.Header,
110109
Type = SecuritySchemeType.ApiKey
111110
});
111+
112+
//add summaries to swagger
113+
bool canShowSummaries = _appConfiguration.GetValue<bool>("Swagger:ShowSummariesOnSwagger");
114+
if (canShowSummaries)
115+
{
116+
var hostXmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
117+
var hostXmlPath = Path.Combine(AppContext.BaseDirectory, hostXmlFile);
118+
options.IncludeXmlComments(hostXmlPath);
119+
120+
var applicationXml = $"AbpCompanyName.AbpProjectName.Application.xml";
121+
var applicationXmlPath = Path.Combine(AppContext.BaseDirectory, applicationXml);
122+
options.IncludeXmlComments(applicationXmlPath);
123+
124+
var webCoreXmlFile = $"AbpCompanyName.AbpProjectName.Web.Core.xml";
125+
var webCoreXmlPath = Path.Combine(AppContext.BaseDirectory, webCoreXmlFile);
126+
options.IncludeXmlComments(webCoreXmlPath);
127+
}
112128
});
113129

114130
// Configure Abp and Dependency Injection
@@ -123,7 +139,7 @@ public IServiceProvider ConfigureServices(IServiceCollection services)
123139
);
124140
}
125141

126-
public void Configure(IApplicationBuilder app, ILoggerFactory loggerFactory)
142+
public void Configure(IApplicationBuilder app, ILoggerFactory loggerFactory)
127143
{
128144
app.UseAbp(options => { options.UseAbpRequestLocalization = false; }); // Initializes ABP framework.
129145

@@ -137,7 +153,7 @@ public void Configure(IApplicationBuilder app, ILoggerFactory loggerFactory)
137153

138154
app.UseAbpRequestLocalization();
139155

140-
156+
141157
app.UseEndpoints(endpoints =>
142158
{
143159
endpoints.MapHub<AbpCommonHub>("/signalr");

aspnet-core/src/AbpCompanyName.AbpProjectName.Web.Host/appsettings.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,8 @@
2121
"Url": "http://localhost:21021/"
2222
}
2323
}
24+
},
25+
"Swagger": {
26+
"ShowSummariesOnSwagger": true
2427
}
2528
}

0 commit comments

Comments
 (0)