2016-07-08 18 views
0

WebApi2プロジェクトをMVC6に移行します。 .NET 4.6.1で書かれた他の依存関係もあるため、同じバージョンをターゲットにする必要があります。ASP.NET Core MVCターゲティングのSwagger(Swashbuckle).Net Framework 4.6.1

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

私は依存関係を追加しました:

"Swashbuckle": "5.3.2", 

をしかし、問題は、ASP.NET MVCのコアにそれを登録/フックアップする方法がないということです。

これを行う方法はありますか?

+0

もうMVC6はありません。 MVC6タグは、古いASP.NET MVC Webstackに基づいて将来のバージョンに使用できるように予約されています。あなたが言及しているものは、ASP.NET Core MVCと呼ばれ、バージョン番号1.0を使用しています。これは.NET Coreに基づいた完全な書き換えであり、古いASP.NET MVC Webstackとの互換性がないためです – Tseng

答えて

1

5.xバージョンのSwashbuckleは、ASP.NET Core MVCをサポートしていません。 ASP.NETコアをサポートする新しいSwashbuckle 6.xバージョンを使用する必要があります。

ASP.NET Core 1.0 RTMをサポートする唯一のバージョンは6.0.0-beta901です。

だから、あなたは/使用の拡張メソッドを追加しますたよりASP.NETのコアを使用すると、Swashbuckle https://github.com/domaindrivendev/Ahoy

のこのポートを使用する必要があります

"Swashbuckle": "6.0.0-beta901" 
5

あなたproject.jsonファイルにこれを追加する必要があります。

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(); 
} 
関連する問題