【问题标题】:Can I keep my classes EF-Migrations in a testing project?我可以将我的课程 EF-Migrations 保留在测试项目中吗?
【发布时间】:2013-07-01 13:40:50
【问题描述】:

如何在测试项目中启用迁移?

PM> Enable-Migrations

无法加载程序集“CreditoImobiliarioBB.EntityFramework.Test”。 (如果您在 Visual Studio 中使用 Code First 迁移,如果您的解决方案的启动项目未引用包含您的迁移的项目,则可能会发生这种情况。您可以更改解决方案的启动项目或使用 -StartUpProjectName 参数。)

【问题讨论】:

  • 原则上,在任何类型的项目中使用 EF 迁移都没有问题。您是否调查过错误消息中给出的提示?我要挑战的是在测试项目中使用迁移的有用性。通常,迁移将应用于包含您的数据类的项目。你想完成什么?

标签: ef-code-first tdd entity-framework-5 entity-framework-migrations


【解决方案1】:

您是否确认您的启动项目(在解决方案资源管理器中)和您的默认项目(在包管理器控制台中)设置正确?

如果您之前开发过任何 Web 应用程序,那么您应该对 Startup Project 设置很熟悉。例如如果您有一个 ASP.NET MVC Web 项目,则应在解决方案资源管理器中将其选为启动项目(以粗体显示)。

您可能知道,这可确保运行应用程序将在浏览器中加载此 Web 项目。除此之外,您还应该知道,这是 Migrations 将尝试使用正确的 DB 连接字符串查找 web.config 文件的地方。

默认项目设置(不同于前面提到的启动项目)设置是在包管理器控制台的下拉列表中设置的,您可以在其中运行诸如 Enable-Migrations、Add-Migration 和 Update-Database 等命令。

我建议您在数据层项目中启用迁移。但是,如果您想使用您的测试项目,请确保在包管理器控制台的默认项目下拉列表中选择测试项目的名称。

希望这会有所帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-26
    • 2018-05-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-08
    相关资源
    最近更新 更多