迁移.net核心后无法将迁移添加到数据库

时间:2017-02-17 16:40:16

标签: .net-core entity-framework-core

我正在使用project.json文件使用dotnet核心版本创建的项目。我能够使用VS Code中的dotnet ef cli命令添加数据库迁移并创建数据库(添加迁移,更新等)。

但是,我最近使用dotnet migrate命令迁移了项目,所以现在我的项目有一个.csproj文件。我需要添加更多的数据库迁移,但是当我运行cli命令时,我收到一条错误,指出找不到project.json文件。

我在网上查看了文档(并在网上搜索过),我找不到任何告诉我可能遗漏的内容。 FWIW,这是我的.csproj文件中可能相关的包:

  <PackageReference Include="Microsoft.EntityFrameworkCore" Version="1.1.0" />
  <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="1.1.0" />
  <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="1.1.0" />

    <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="1.1.0-preview4-final" />

2 个答案:

答案 0 :(得分:3)

新版本的工具已针对新的.csproj方式发布。您需要将Microsoft.EntityFrameworkCore.Tools.DotNet的版本从1.1.0-preview4-final更改为1.0.0-msbuild3-final

您可以在Nuget上看到不同的最新版本here

答案 1 :(得分:1)

如果你不需要专门的“dotnet ef”工具,你也可以使用VS Powershell集成版本(如果你需要dotnet ef工具,也许下面的朋友可以帮助你):

我使用以下包引用:

<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="1.1.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="1.1.0-preview4-final" />

通过设置这些引用,可以使用Package Manager控制台中的EF-Tools(Add-Migration,Update-Database,...)。