10

将 ASP.NET MVC4 与 EF4.3 一起使用

Enable-Migrations从 PM 控制台运行

System.Management.Automation.RuntimeException:项目“MyProj”构建失败。项目“MyProj”未能构建。

项目构建(control-shift-B)

有什么方法可以获取有关此错误的更多详细信息以进行诊断?

4

6 回答 6

5

如果您正在构建 64 位应用程序,也会发生这种情况。至少在构建迁移时暂时切换到“任何 CPU”,问题可能会消失。不过,这只是可能导致该错误的件事。

于 2015-03-03T14:59:52.573 回答
3

从包管理器控制台执行“Enable-Migrations”需要对特定 DbContext 的引用。例如

PM> Enable-Migrations -ContextTypeName myMvcApp.Web.Infrastructure.ContextDb

您不需要安装第 3 方程序集或除 EntityFramework 4.3+ 以外的任何其他程序集(上面的命令适用于 EF 5.0。这不是 EF 的一个有据可查但必不可少的功能。

于 2012-10-19T19:01:16.060 回答
2

原来我之前在一个没有 dbContext 的项目上运行过这个。这创建了一个迁移配置类,上面写着“填写类的名称”,但未能构建。

这导致我的一个项目无法编译。

删除配置类解决了我的问题。

于 2012-08-11T23:35:33.497 回答
2

让我们清楚一点。这个错误是一个令人困惑的错误,因为该消息表明该项目不会构建,而它显然可以在 Visual Studio 中编译。

在重构 ApplicationDbContext 和其他安全类的命名空间以匹配来自

namespace {projectname}.Models

namespace {projectname}.Models.Account

还原此命名空间重构解决了该问题。

有时,很少,ReSharper 不是您的朋友。

于 2015-05-25T03:29:24.920 回答
1

就我而言,我的项目中有错误。我已清除项目中的所有其他错误。然后它运作良好。

于 2021-10-03T04:28:16.383 回答
0

就我而言,Visual Studio 输出窗口中有一条更有意义的消息。

PosmasterDBContext'不包含'Products'的定义,并且找不到接受'PosmasterDBContext'类型的第一个参数的扩展方法'Products'(您是否缺少 using 指令或程序集引用?)

我马上就知道在我的代码中的某个地方,我将Products更改为Product

一旦我将其恢复为Products,错误就消失了。

于 2021-01-09T01:49:30.897 回答