【问题标题】:PowerShell Commands Adding EF Migration by Code通过代码添加 EF 迁移的 PowerShell 命令
【发布时间】:2015-12-18 01:36:19
【问题描述】:

想知道是否有人可以帮我解决这个问题。

我可以使用包管理器控制台来启用迁移、添加迁移等。但我希望能够通过 PowerShell 对象使用 c# 代码来做到这一点

到目前为止我所拥有的是:

var ps = PowerShell.Create();
ps.AddCommand("Set-ExecutionPolicy");
ps.AddArgument("Unrestricted");
ps.AddCommand("Import-Module");
ps.AddParameter("Name");
ps.AddArgument(@"'.\packages\EntityFramework.6.1.3\tools\EntityFramework.psm1'";
ps.AddCommand("Add-Migration");
ps.AddParameter("Name");
ps.AddArgument("Migration21Sept");
ps.AddParameter("ProjectName");
ps.AddArgument("Context1");
ps.Invoke();

但当我执行此代码时,我收到一条错误消息:“‘Add-Migration’一词未被识别为 cmdlet、函数、脚本文件或可运行程序的名称”

【问题讨论】:

  • 表示模块(EntityFramework.psm1)没有正确加载
  • 您也可以使用DbMigrator 来迁移数据库。你的实际问题是什么?在我看来,这是一个 XY 问题
  • 感谢您的回复.. 是否有任何原因导致无法正常加载?或者你能给我指出正确的方向吗?
  • @Default 我知道 Migrator 和 ToolingFacade 类。我可以通过 ToolingFacade 类构建一个新的迁移,在这个脚手架对象中是创建这个迁移所需的代码。因此,理论上,我可以创建一个新文件并将代码添加到其中。然后更新此迁移。尽管我遇到的一个问题是它没有注意到我的模型更改,并且 Up&down 方法是空的。我只需要一种方法,通过代码来创建一个新的迁移文件。所以我将使用 DbMigrator 来实际处理它。

标签: c# entity-framework powershell entity-framework-migrations cmdlet


【解决方案1】:

浏览到您的实体目录,shift + 右键单击​​然后选择“在此处打开 powershell 窗口”

dotnet ef 迁移添加“MigrationName”

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-19
    • 2016-05-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多