我正在使用最新的VS2017更新与donet核心1我尝试创建一个ef迁移到我的项目
使用命令dotnet ef
但是我得到了
dotnet : No executable found matching command "dotnet-ef"
然后我从我的类库csproj(.Net Core)中删除对EntityFrameworkCore的任何引用,并且想要添加包Microsoft.EntityFrameworkCore.Tools.DotNet 1.0.1。但是我拒绝了,我收到以下错误
严重级代码说明项目文件行抑制状态错误包 'Microsoft.EntityFrameworkCore.Tools.DotNet 1.0.1'具有项目不支持的包类型'DotnetCliTool' 'MyVS2017Project'。 0我也在类库中尝试过它(.Net 框架)
使用程序包管理器控制台命令时出现相同的错误消息
安装包Microsoft.EntityFrameworkCore.Tools.DotNet
我尝试直接编辑csproj文件并添加
<ItemGroup>
<DotNetCliToolReference
Include="Microsoft.EntityFrameworkCore.Tools.DotNet"
Version="1.0.0" />
</ItemGroup>
但是dotnet ef仍然提供相同的错误消息,并且nuget包管理器看不到它
我尝试创建一个新的网络核心类库,但即使是空白的也拒绝安装工具
我已经多次运行dotnet还原并重新启动了visual studio。
我已经下载了最新的dot net SDK 1.0.4并运行修复以重新安装它。这允许安装nuget包但是尽管我做了什么,我无法让类库理解dotnet ef
答案 0 :(得分:0)
我的项目面向完整的.NET框架,因此我只能使用PowerShell命令,例如add-migration,update-database而不是dotnet ef命令
答案 1 :(得分:0)
wvalues
添加到类库中。这是现在支持添加它的唯一方法。右键单击该项目,然后选择Microsoft.EntityFrameworkCore.Tools.DotNet
。然后,添加以下内容:
Edit *.csproj
注意:该版本是本文发布时的最新版本,将来可能会发生变化。
我在这里有一个更深入的解决方案:EF 7 Migrations with multiple DBContexts