繁体   English   中英

未找到指定的框架“Microsoft.NETCore.App”,版本“2.1”

[英]The specified framework 'Microsoft.NETCore.App', version '2.1' was not found

我正在 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”作为系统路径变量中的第一个路径出现。

将我的解决方案中的所有项目降级到 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>

为了解决这个问题,我必须安装Microsoft.EntityFrameworkCore.Design包。 文档的安装工具部分指出,对于 Asp.Net Core 2.1+ 没有必要这样做:

ASP.NET 核心 2.1+

  • 安装当前的.NET Core SDK 即使您拥有最新版本的 Visual Studio 2017,也必须安装 SDK。
    这就是 ASP.NET Core 2.1+ 所需的全部内容,因为Microsoft.EntityFrameworkCore.Design包包含在Microsoft.AspNetCore.App 元包中

我的解决方案被分解成不同的项目; 我创建了一个类库项目,我的 EF Core 安装所在的位置。

由于它不是 Asp.Net Core 项目(如前所述,它是一个类库),因此还需要安装Microsoft.EntityFrameworkCore.Design包。

该包可以使用: dotnet add package Microsoft.EntityFrameworkCore.Design安装

感谢 Ivan Stoev 为我指明了文档的方向。
这个错误根本没有帮助,让我大吃一惊,试图找到潜在的问题。 我希望这对其他人有用。

我在运行时遇到了同样的问题

dotnet ef dbcontext info -s ProjectWeb.csproj

虽然它正在寻找的版本是 2.1.17:

The framework 'Microsoft.NETCore.App', version '2.1.17' was not found.

幸运的是,在深入研究该问题后,有人建议在此处下载它:

https://aka.ms/dotnet-core-applaunch?framework=Microsoft.NETCore.App&framework_version=2.1.17&arch=x64&rid=win10-x64

这会将您重定向到此链接:

https://dotnet.microsoft.com/download/dotnet-core/2.1/runtime/?utm_source=getdotnetcore&utm_medium=referral

安装后,问题在我这边得到解决。

另请检查您的BundlerMinifier

   <ItemGroup>
       <DotNetCliToolReference Include="BundlerMinifier.Core" Version="3.2.449" />
   </ItemGroup>

如果您使用的是旧版本,这可能是罪魁祸首……请在此处查看最新版本: https : //www.nuget.org/packages/BundlerMinifier.Core/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM