ASP.NET Core MVC上的Swagger(Swashbuckle),目标是.Net Framework 4.6.1

时间:2016-07-08 11:01:44

标签: .net asp.net-core asp.net-core-mvc swagger swashbuckle

我正在将WebApi2项目迁移到MVC6。 由于我们在.NET 4.6.1中编写了其他依赖项,因此我们需要针对相同的版本。

"frameworks": {
"net461": {}}

我添加了依赖项:

"Swashbuckle": "5.3.2",

但问题是没有办法将它连接/注册到ASP.NET Core MVC。

有什么办法吗?

3 个答案:

答案 0 :(得分:5)

使用ASP.NET Core,您应该使用Swashbuckle的这个端口https://github.com/domaindrivendev/Ahoy

您将添加/使用扩展方法:

public void ConfigureServices(IServiceCollection services)
{
    ... Configure MVC services ...

    // Inject an implementation of ISwaggerProvider with defaulted   settings applied
    services.AddSwaggerGen();
}

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
    ... Enable MVC middleware ...

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

    // Enable middleware to serve swagger-ui assets (HTML, JS, CSS etc.)
    app.UseSwaggerUi();
}

答案 1 :(得分:1)

Swashbuckle的5.x版本不支持ASP.NET Core MVC。您必须使用支持ASP.NET Core的新Swashbuckle 6.x版本。

支持ASP.NET Core 1.0 RTM的唯一版本是6.0.0-beta901

所以你需要将它添加到你的project.json文件

"Swashbuckle": "6.0.0-beta901"

答案 2 :(得分:-1)

与.Net Framework 4.6兼容的Swashbuckle版本。是5.6.0