【发布时间】:2019-05-05 21:42:37
【问题描述】:
我正在尝试使用自己的 .css 样式表自定义 swagger UI。
我正在使用 asp net core 2.1 和 NSwag.AspNetCore 12.2.5。
我四处搜索,发现在以前的版本中,这是通过嵌入我的自定义样式表,然后将其注入到我的中间件配置中来完成的:
app.UseSwagger(o =>
{
o.InjectStylesheet("/css/custom.css");
});
在最新版本的 NSwag 中,这似乎已更改为:
app.UseSwaggerUi3(cfg =>
{
cfg.CustomStylesheetUri = new Uri("/css/custom.css", UriKind.Relative);
});
但是要么我没有使样式表可用,要么我的 uri 没有正确指向它。
我不完全理解 Web 服务器如何提供 swagger 文件(我假设它们是从 NSwag nuget 包中加载的,但我没有在我的构建输出文件夹中看到它们),所以我假设我不是使样式表正确可用。
执行上述操作,我看到<link rel="stylesheet" href="css/custom.css">添加到swagger index.html,但chrome开发人员工具说找不到该文件。
我尝试过: 1. 将我的样式表添加到 wwwroot。 2. 在项目的某处添加我的样式表,并将其显式复制到我的 csproj 的输出文件夹中。 3. 将我的样式表嵌入到构建工件中。
我的中间件管道中有.UseStaticFiles()。
我错过了什么?有没有人有一个可行的例子?
【问题讨论】:
标签: c# asp.net-core swagger nswag