WJK*_*WJK 6 c# .net-core-2.1 ef-core-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>
Run Code Online (Sandbox Code Playgroud)
为了解决该问题,我必须安装该Microsoft.EntityFrameworkCore.Design软件包。文档的“ 安装工具”部分指出,对于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 metapackage中。
我的解决方案分为多个项目;我在EF Core安装所在的位置创建了一个类库项目。
由于它不是Asp.Net Core项目(如前所述,它是类库),因此还需要Microsoft.EntityFrameworkCore.Design安装软件包。
可以使用以下方法安装该软件包: dotnet add package Microsoft.EntityFrameworkCore.Design
感谢Ivan Stoev向我指出文档的方向。
该错误根本没有帮助,使我陷入了困境,试图找出潜在的问题。我希望这对其他人有用。
| 归档时间: |
|
| 查看次数: |
13732 次 |
| 最近记录: |