【问题标题】:EF Data Migrations does not work after close project关闭项目后 EF 数据迁移不起作用
【发布时间】:2016-03-10 21:03:05
【问题描述】:

我正在使用实体框架数据迁移。如果我更改有关实体或其他内容的内容,我会尝试在包管理器控制台上使用“add-migration MyFirstMigration”。但它返回一个异常:

The term 'add-migration' is not recognized as the name of a cmdlet, function, script  file, or operable program. Check the spelling of the name, or if a path was inclu
ded, verify that the path is correct and try again.
At line:1 char:14
+ add-migration <<<< 
+ CategoryInfo          : ObjectNotFound: (add-migration:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException

如果我从 Nuget 卸载 EntityFramework.Migrations 并重新安装它使用相同的代码 ("add-migration MyFirstMigration","update-database") 直到关闭项目。

我该如何解决?其他人遇到过这种情况吗?

编辑:顺便说一句,它可以在另一台电脑上正常工作...

【问题讨论】:

  • 我相信他们发布了一个新版本的 NuGet 来解决这个问题。

标签: entity-framework-4.1 data-migration entity-framework-migrations


【解决方案1】:

我也遇到过这个问题,虽然我正在测试 VS 11 和 EF5,所以这可能不适用于你。这可能是几件事。

你必须按以下顺序打开VS:

  1. 在 VS 打开的情况下,关闭包管理器控制台
  2. 关闭VS
  3. 打开VS
  4. 打开您的项目
  5. 打开包管理器控制台

如果你关闭 VS,当包管理器控制台打开时,它会记住这一点。然后,当您重新打开 VS 时,包管理器控制台在您打开项目之前已经打开,它会变得混乱。


另一种可能性是您安装了其他不了解“添加迁移”的 EF 包,它们正在妨碍您。

在包管理器控制台中运行“get-package”,查看安装的内容。删除不必要的/旧的东西。

【讨论】:

  • 如果有一个答案最令人气愤,那就是“将其关闭然后重新打开”。但地狱,它的工作原理。谢谢!
  • 处理这个问题已经将近 3 年了。太令人沮丧了。
【解决方案2】:

有时会发生此错误,当我们将命令复制并粘贴到默认打开的包管理器控制台(PMC)中时,我在粘贴命令并尝试执行它时也会遇到相同的错误,但是当我关闭 PMC 和 VS 并再次我打开VS然后打开PMC,然后我输入PMC命令然后它成功执行。

【讨论】:

    猜你喜欢
    • 2018-01-21
    • 1970-01-01
    • 1970-01-01
    • 2016-09-19
    • 1970-01-01
    • 1970-01-01
    • 2018-06-02
    • 1970-01-01
    • 2020-03-02
    相关资源
    最近更新 更多