2012-08-11 32 views
6

使用ASP.NET MVC4與EF4.3啓用的遷移錯誤:不合格項目建設

從PM控制檯

System.Management.Automation.RuntimeException運行Enable-Migrations:項目 '的Myproj' 未能建立。該項目'MyProj'未能建立。

該項目建立(控制移B)

有沒有什麼辦法讓這個錯誤更詳細的診斷?

回答

1

原來,我曾經在沒有dbContext的項目中運行過這個。這創建了一個遷移配置類,表示「填寫類的名稱」,這是無法建立。

這導致我的一個項目默默無法編譯。

刪除配置類解決了我的問題。

2

從程序包管理器控制檯執行「Enable-Migrations」需要對特定的DbContext進行引用。例如

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

你不需要安裝第三方組件或大於4.3及更高版本的EntityFramework以外的任何其他組件(上面的命令時,EF 5.0,這是不是EF的有據可查的,但基本特徵。

2

如果你正在構建一個64位應用程序,也會發生這種情況。至少在構建遷移時暫時切換到「任何CPU」,問題可能會消失,這只是一個導致該錯誤,雖然。

1

讓我們清楚這個錯誤是一個混淆因爲該消息表明該項目不會構建,但它顯然在Visual Studio中進行編譯。

它發生在我重構命名空間ApplicationDbContext和其他安全類後的文件夾結構從

namespace {projectname}.Models 

匹配

namespace {projectname}.Models.Account 

還原這個命名空間重構固定的問題。

有時很少,ReSharper不是你的朋友。