web-dev-qa-db-ja.com

指定されたフレームワーク「Microsoft.NETCore.App」、バージョン「2.1」が見つかりませんでした

DotNet Core 2.1でAngular 6アプリケーションを開発しています。EFCoreをセットアップするまで、すべて問題なく動作しています。すべてのモデルが定義され、コンテキストが作成されます。dotnet ef migrations add InitialCreate 「指定されたフレームワーク「Microsoft.NETCore.App」、バージョン「2.1」が見つかりませんでした」というエラー。

DotNet Coreのさまざまなバージョンでこのエラーが発生する可能性があるすべての投稿を検索し、読みました。私にとってこの問題を解決するために何も機能していません。

DotNet Core Appのさまざまなバージョンがインストールされています。 「C:\ Program Files\dotnet\shared\Microsoft.NETCore.App」を見ると、次のものがあります。

-1.0.4
-1.0.5
-1.1.1
-1.1.2
-2.0.0
-2.0.3
-2.0.5
-2.0.6
-2.0.7
-2.0.9
-2.1.0
-2.1.4
-2.1.5
-2.1.6

「C:\ Program Files\dotnet」は、システムPATH変数の最初のパスとして表示されます。

ソリューションのすべてのプロジェクトをdotNet Core 2.0にダウングレードし、コマンドを実行すると、バージョン2.0を参照してまったく同じエラーが発生します。

どんなアドバイスも大歓迎です...

EFプロジェクトのcsprojファイルは次のとおりです。

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>netcoreapp2.1</TargetFramework>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="2.1.4" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\*********.Contracts\*********.Contracts.csproj" />
  </ItemGroup>

  <ItemGroup>
    <Reference Include="System">
      <HintPath>System</HintPath>
    </Reference>
    <Reference Include="System.Data">
      <HintPath>System.Data</HintPath>
    </Reference>
    <Reference Include="System.Xml">
      <HintPath>System.Xml</HintPath>
    </Reference>
  </ItemGroup>
</Project>
6
WJK

この問題を解決するには、Microsoft.EntityFrameworkCore.Design パッケージ。ドキュメントの installing-the-tools セクションには、Asp.Net Core 2.1+の場合はそうする必要がないと記載されています。

ASP.NET Core 2.1+

  • 現在の 。NET Core SDK をインストールします。 Visual Studio 2017の最新バージョンを使用している場合でも、SDKをインストールする必要があります。
    ASP.NET Core 2.1+に必要なのはこれだけです。なぜならMicrosoft.EntityFrameworkCore.Designパッケージは Microsoft.AspNetCore.Appメタパッケージ に含まれています。

私のソリューションはさまざまなプロジェクトに分かれています。 EF Coreインストールが存在するClass Libraryプロジェクトを作成しました。

Asp.Net Coreプロジェクトではないため(前述のクラスライブラリです)、Microsoft.EntityFrameworkCore.Designインストールするパッケージ。

パッケージは次を使用してインストールできます。dotnet add package Microsoft.EntityFrameworkCore.Design

ドキュメントの方向性を教えてくれたIvan Stoevに感謝します。
エラーはまったく役に立ちませんでした。根本的な問題を見つけるために、野生のガチョウの追跡に私を送りました。これが他の誰かに役立つことを願っています。

6
WJK