【问题标题】:Why the metod app.UseSwaggerUI(...) is not found?为什么找不到方法 app.UseSwaggerUI(...)?
【发布时间】:2021-01-13 14:50:14
【问题描述】:

我想在使用 .Net Core 3.1 创建的新 Web 应用程序上添加 swagger。我在以下行收到错误:

app.UseSwaggerUI(c =>
{
    c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
});

“IApplicationBuilder”不包含“UseSwaggerUI”的定义,并且找不到接受“IApplicationBuilder”类型的第一个参数的可访问扩展方法“UseSwaggerUI”(您是否缺少 using 指令或程序集引用?)

即使我已经像the MSDN example 一样安装了 Swagger。

这是来自 NuGet 的 swagger 包的内容:

我有以下用途:

using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.HttpsPolicy;
using Microsoft.AspNetCore.SpaServices.ReactDevelopmentServer;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Options;
using Microsoft.OpenApi.Models;

我错过了什么?

【问题讨论】:

  • 我在您的屏幕截图中看到了Swashbuckle.AspNetCore.Swagger,但您是否也安装了Swashbuckle.AspNetCore.SwaggerUi
  • @FranzGleichmann 非常感谢您的评论!我不知道这是一个单独的 nuget 包,在 MSDN 上也没有提到它。如果您发布答案,我会接受它,因为它解决了我的问题

标签: c# swagger asp.net-core-3.1 swashbuckle.aspnetcore


【解决方案1】:

NuGeT 包 Swashbuckle.AspNetCore.Swagger 仅提供文档的 JSON 端点。

要真正拥有UI,还必须安装相应的包Swashbuckle.AspNetCore.SwaggerUi

Install-Package Swashbuckle.AspNetCore.SwaggerUi -Version 5.6.3

【讨论】:

  • 实际上我必须更新到版本 6.2.3 才能摆脱该错误。
猜你喜欢
  • 1970-01-01
  • 2021-11-08
  • 2023-03-03
  • 2012-06-13
  • 1970-01-01
  • 1970-01-01
  • 2010-10-11
  • 2019-01-22
  • 1970-01-01
相关资源
最近更新 更多