web-dev-qa-db-ja.com

VS 2017でMicrosoft.NETCore.App SDKのバージョンを更新する方法

VS 2015を使用して最初に開発されたASP.NET Core APIプロジェクトがあります。VS2017をインストールして、プロジェクトを変換させました。
次に、[プロジェクトのプロパティ]-> [アプリケーション]-> [ターゲットフレームワーク]に移動し、ターゲットフレームワークを.NETCoreApp 1.1に変更します。

それを行うとすぐに2つのエラーが発生します

エラー1つ以上のプロジェクトが.NETCoreApp、Version = v1.0と互換性がありません。

エラーProject Apiはnetcoreapp1.0(.NETCoreApp、Version = v1.0)と互換性がありません。 Project APIは次をサポートしています:netcoreapp1.1(.NETCoreApp、Version = v1.1)

Dependencies -> SDK -> Microsoft.NETCore.App -> Propertiesをチェックすると、バージョン1.0.4SDK RootからC:\Users\username\.nuget\packages\Microsoft.netcore.app\1.0.4が表示されます

マシンにMicrosoft.NETCore.App SDKバージョン1.1.2をすでにインストールしています。

Nuget Package Managerに移動してSDKバージョンを更新すると、Autoreferencedが表示され、更新ボタンが無効になります。

プロジェクトのSDKのバージョンを1.1.2に更新するにはどうすればよいですか?

また、VS StudioリファレンスSDKがC:\Users\username\.nuget\packages\Microsoft.netcore.appではなくC:\Program Files\dotnet\shared\Microsoft.NETCore.App\1.1.2からある理由

更新1

実際、1.1.2はSDKバージョンではありません。 2017年7月20日現在 最新のSDKバージョンは1.0.4で、ランタイムバージョンは1.1.2です。私のマシンにはC:\Program Files\dotnet\sdk\1.0.4 SDKとC:\Program Files\dotnet\shared\Microsoft.NETCore.App\1.1.2があります。ランタイムがインストールされました。

したがって、以前に述べたように、VS 2017で変換されたプロジェクトを開くと、依存関係-> SDK-> Microsoft.NETCore.App-プロパティのバージョンは1.0.4で、SDKルートはC:\Users\username\.nuget\packages\Microsoft.netcore.app\1.0.4です。

今、私は同じソリューションに新しいプロジェクトを追加しましたが、新しいプロジェクトの依存関係-> SDK-> Microsoft.NETCore.App->プロパティのバージョンは1.1.2で、SDKルートC:\Users\username\.nuget\packages\Microsoft.netcore.app\1.1.2です

ここでどちらが正しいのかわからない、変換されたプロジェクトのSDKバージョン、または新しく追加されたプロジェクトのSDKバージョン?

VS 2017で新しいプロジェクトを作成した場合、その依存関係-> SDK-> Microsoft.NETCore.App->プロパティのバージョンは1.1.2です

1.1.2 SDKも利用できません。 VS 2017がランタイムバージョンをSDKバージョンとして表示する理由

これはVS 2017のバグですか?

5
LP13

プロジェクトを右クリックして、csprojファイルを編集します。

次のような行が表示された場合:

<RuntimeFrameworkVersion>1.0.4</RuntimeFrameworkVersion>

次に1.1.2に更新するか、この行を削除してください。次に、パッケージを復元します(コマンドラインdotnet restoreを使用している可能性があります。VSがこれを自動的に実行するかどうかはわかりません)。

この方法でMicrosoft.NETCore.App1.1.2に更新できます。これで問題が解決します。

3
胡玮文

すべてのプロジェクトの依存関係を少なくともバージョン1.1.0に更新してから、バージョンをもう一度変更することをお勧めします。結局のところ、ソリューションをクリーンアップして再構築してください。

0
Alan Silva