2011-10-14 35 views
0

使用EF 4.0我試圖做我認爲應該死的簡單但它似乎是生成破碎的代碼。單個程序集中的多個EF模型

  1. 創建一個新的項目(類庫)
  2. 從數據庫中添加一個新的EF模型和生成(什麼都無所謂)
  3. 編譯(都好)
  4. 添加第二EF模型並從數據庫生成(再次,什麼都無所謂)
  5. 編譯(休息時間)

可你只有每個裝配什麼的一個EF模型?

我沒有意識到任何限制......雖然它似乎把代碼放在一起,只要添加第二個模型就會破壞所有內容。

任何想法?

編輯:

好吧,我得到了全面通過將每個EF模型,子文件夾,這會產生重複的代碼仍然但是把它放在一個單獨的命名空間的問題...... u'd認爲這將是足夠聰明弄清楚重複...哦。

+2

「中斷」不是特別有用的錯誤報告。 – AakashM

+0

這就是爲什麼我發佈了重現問題的步驟...通過生成的代碼和有問題的錯誤來看,它似乎在兩個文件後面的EF模型代碼中生成相同的代碼。然後用它裏面的實體生成一個子命名空間... – War

+0

我剛剛嘗試了這一點,並且它一切正常。因爲EF生成的所有類都是「partial」,所以可以有多個具有相同完全限定名稱的類的定義。在最小的複製情況下,你得到的實際編譯錯誤是什麼? – AakashM

回答

0

我從來沒有完全達到這個底部,但我想出了一個工作,基本上是刪除項目文件並重新創建它。

奇怪的是,它會影響EF這樣雖然??