2013-11-25 48 views
1

我有一個項目是在.net 4.0中的VS2010中創建的,並且具有高級開發。我不能在現有項目中使用帶net 4.0的EF 6。在一個新的解決方案中,我可以做到這一點

現在我已經使用VS2013,並且我想使用EF 6.0代替EF 4.4,因此我在作爲存儲庫的項目中安裝了EF 6 nuget,並嘗試創建edmx。

在嚮導中,在步驟之一,示出了兩個選項中,選擇EF 6.0而禁用和啓用EF 5.0。它說我不能選擇EF 6.0,因爲我有一個EntityFramework.dll的引用。

所以我刪除了參考和我再試一次,在這種情況下,我可以選擇EF 6,但EDMX無法顯示,因爲有一個axml文件的差異。 EntityFramework的dll版本是4.0。

在相同的解決方案,使測試,我創建了一個新的項目,默認情況下是淨4.5,但我改變目標。然後我安裝EF 6.0這個項目,我嘗試創建edmx模型。在這種情況下,我不會問EF的版本,直接創建模型和entityFramwork DLL的版本是6.0。如果我使用xml編輯器編輯edmx文件,我可以看到該模型的版本是v3,EF6的版本也是如此。

在我有問題的項目,我想我清除所有,我刪除項目中的所有引用,我刪除包文件夾在我的解決方案,也是我在我的項目中刪除德包的配置文件。但是我不能在這個項目中使用EF 6。我也清理我的項目配置文件。

這就是爲什麼我有懷疑,如果有一些問題,如果我使用VS2010創建了一個項目,我與V2013打開它。

這個問題似乎是在冥冥中關於EF的版本的項目信息存儲和使用這個版本,但我不知道是哪裏保存。

謝謝。

回答

1

我建議你閱讀這篇文章。

Upgrading to EF6

它擁有所有你需要更新到EF6

步驟
相關問題