【问题标题】:Is swashbuckle.aspnetcore supporting asp.net core 3.0?swashbuckle.aspnetcore 是否支持 asp.net core 3.0?
【发布时间】:2019-10-01 23:00:24
【问题描述】:

我正在安装一个新的 asp.net core 3.0

它使用services.AddControllers(); 而不是services.addMvc();

及其使用

  app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllers();
            });

而不是

app.UserMvc();

我尝试添加swashbuckle.aspnetcore 以生成其招摇的用户界面。

它不工作。

swashbuckle.aspnetcore 已经支持 asp.net core 3.0 了吗?

【问题讨论】:

标签: c# swagger swagger-ui swashbuckle asp.net-core-3.0


【解决方案1】:

是的,ASP.NET Core 3.0 支持 Swashbuckle。

1) 您可以通过在包管理器控制台中运行以下命令来简单地安装它:

Install-Package Swashbuckle.AspNetCore -Version 5.0.0-rc3

2)然后在Startup.ConfigureServices方法中将Swagger生成器添加到服务集合中:

services.AddSwaggerGen(c =>
{
    c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" });
});

3) 在Startup.Configure 方法中,添加这两个以启用中间件以提供生成的 JSON 文档和 Swagger UI:

// Enable middleware to serve generated Swagger as a JSON endpoint.
app.UseSwagger();

// Enable middleware to serve swagger-ui (HTML, JS, CSS, etc.),
// specifying the Swagger JSON endpoint.
app.UseSwaggerUI(c =>
{
    c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
});

要自定义它,您可以在此处查看完整指南: https://docs.microsoft.com/en-us/aspnet/core/tutorials/getting-started-with-swashbuckle?view=aspnetcore-3.0&tabs=visual-studio

【讨论】:

    【解决方案2】:

    我可以通过以下方式访问 3.0 Preview 7 中的 swagger ui:

    <PackageReference Include="NSwag.AspNetCore" Version="13.0.4" />
    
    public void ConfigureServices(IServiceCollection services) {
    ...
       services.AddSwaggerDocument();
    }
    
    Configure() {
    ...
       app.UseSwaggerUi3();
    }
    

    【讨论】:

    • 啊它不是 swashbuckle.aspnetcore,我相信它的 NSwag。
    【解决方案3】:

    使用 SwashBuckle.AspNetCore 版本 5.0.0-rc2 修复它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-21
      • 2021-12-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多