在使用Swashbuckle SwaggerUI时,要先添加对Microsoft.AspNetCore.Mvc.TagHelpers包的引用,并在Startup.cs文件中配置SwaggerUI。代码示例如下:
using Microsoft.AspNetCore.Builder;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.OpenApi.Models;
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" });
});
}
public void Configure(IApplicationBuilder app)
{
app.UseRouting();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
});
app.UseSwagger(c =>
{
c.RouteTemplate = "swagger/{documentName}/swagger.json";
});
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
c.InjectStylesheet("/swagger-ui/custom.css");
});
}
}
可以看到,在配置SwaggerUI时,我们使用了InjectStylesheet方法添加了一个自定义样式表custom.css。在custom.css中,我们可以对代码高亮样式进行调整。例如,我们可以添加以下样式:
pre code {
background-color: #272822;
color: #f8f8f2;
padding: 1em;
}
这样,SwaggerUI的代码区块就会使用深色背景,并且代码高亮颜色为白色,供使用。