3

我正在使用ContosoUniversity示例。我剛剛使用Nuget下載和安裝代碼第一次遷移pakage。當我執行update-database命令時,它會引發錯誤。有什麼比安裝nuget包更有用嗎?EF遷移錯誤:無法加載類型'System.Data.Entity.Infrastructure.DbContextInfo'

Update-Database : Could not load type 'System.Data.Entity.Infrastructure.DbContextInfo' from assembly 'EntityFramework, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'. 
At line:1 char:16 
+ update-database <<<< 
    + CategoryInfo   : NotSpecified: (:) [Update-Database], TypeLoadException 
    + FullyQualifiedErrorId : System.TypeLoadException,System.Data.Entity.Migrations.Commands.MigrateCommand 

編輯, 現在我已經安裝ADO.NET Entity Framework 4.1 - Update 1,現在它拋出我試圖改變在微軟的博客,但沒有任何場景的錯誤

Update-Database : The project 'ContosoUniversity' does not contain or reference any contexts. 
At line:1 char:16 
+ update-database <<<< 
    + CategoryInfo   : NotSpecified: (:) [Update-Database], InvalidOperationException 
    + FullyQualifiedErrorId : System.InvalidOperationException,System.Data.Entity.Migrations.Commands.MigrateCommand 

。 (http://blogs.msdn.com/b/adonet/archive/2011/07/27/code-first-migrations-august-2011-ctp-released.aspx

回答

4

嘗試安裝msi。

http://www.microsoft.com/download/en/details.aspx?id=26825

喜歡它那具有識別您的項目中的上下文問題,你得到的聲音的第二個錯誤。確保你有一個繼承自DbContext的類。

我還會檢查您的項目是否引用了Entity Framework的正確版本 - 4.1 Update 1.根據項目類型,您應該能夠在您的項目的References文件夾中找到有問題的引用。您可能需要單擊「顯示所有文件」按鈕(位於解決方案資源管理器頂部工具欄左側的第二個按鈕)。

選中引用後,您將在「屬性」窗格中看到DLL及其版本的路徑等信息(如果F4不可見,則爲F4)。

編輯:根據下面的JTew,需要重新啓動Visual Studio。

+0

現在我已經安裝它並引發新的錯誤。 Plz幫助我。 –

+0

我剛添加到我的答案。 –

+0

我該如何檢查參考版本? –

1

有同樣的錯誤。

我:

  • 通過.msi
  • 安裝了新版本安裝EF 4.1(舊版本)(EF 4.1 Update 1的遷移阿爾法3)通過的NuGet

這錯誤竟然是該框架的抱怨,因爲它正在從GAC獲得較舊的4.1.0.0。

卸載舊版EF 4.1的確有竅門。

相關問題