我一直負責提升我們的軟件使用EF6。以前它是使用EF4 & 5.實體框架6 - 重複使用同一個表中多個EDMX文件
的組合,我們使用數據庫第一種方法。代碼更改進行得順利,但在運行應用程序並執行查詢之後,會引發以下錯誤。指定
模式是無效的。錯誤:
CLR類型的電火花加工類型的映射是不明確的,因爲多個CLR類型匹配EDM類型「tblAccountMaintenance」。
以前發現的CLR類型'DALUsers.StatusDB.tblAccountMaintenance',新發現的CLR類型'DALUsers.AccountsDB.tblAccountMaintenance'。
問題中的課程tblAccountMaintenance
在多個.tt
文件中生成。這些類是對同一個表的引用,僅在不同的.edmx
文件中引用。
在這種情況下,簡單地刪除其中一個引用並不是一個好的選擇,因爲我們對其他幾個表使用了類似的策略,並且需要數千行重寫的代碼。
什麼我需要做的EF6解決這一問題?
你試過把EDMX文件在不同的命名空間? – tdbeckett
是的,不同的命名空間 –
它需要修改你的T4模板文件,而不僅僅是簡單地定位'edmx'文件。 ***除非你創建新的edmx文件(模型)並將它們放置在不同的文件夾中***最初***。 – Hopeless