EF Core使用NUGET Package Manager控制台或CMD

时间:2017-01-30 04:35:12

标签: c# entity-framework entity-framework-core

我正在尝试使用EF Core添加初始迁移。我不确定使用哪一个或当我应该使用下面的时候。我正在使用EF core 1.1

dotnet ef migration add init(使用窗口控制台)

OR

add-migration init(使用Nuget控制台)

我过去一直在使用Nuget Package Manager控制台(EF 6)进行迁移。

我还注意到两者都用于EF Core,但我不确定上述命令对哪个.NET框架(.NET Core)版本有效。

的问候, 艾伦

2 个答案:

答案 0 :(得分:4)

作为Martin said,您可以使用其中之一。如果您首先dotnet ef项目,cd命令甚至可以在PMC中运行。甚至还有第三个命令:ef.exe可以在NuGet包中找到。

以下是每个人给你的解释:(以“升序”顺序)

  • ef.exe - 在原始程序集上运行。你告诉它项目信息。
  • dotnet ef - 在*.csproj个文件上运行(使用MSBuild)。推断项目信息。致电ef.exe
  • PMC工具 - 在Visual Studio项目上运行(使用EnvDTE)。推断项目信息。检测启动项目。在IDE中打开文件。具有命令参数的制表符扩展。致电ef.exe

因此,为了获得最佳体验,请尽可能使用PMC工具(例如Add-Migration等)。

答案 1 :(得分:2)

您可以使用其中之一。

就个人而言,我喜欢使用NuGet控制台,因为我不必离开Visual Studio。来自NuGet控制台的PowerShell命令简单地运行了引擎盖下的dotnet.exe命令 - 它们只是语法糖:)