我想重寫一個非常簡單的應用程序,從C#到F#,現在使用SqlEntityConnection類型提供程序,並且遇到EF問題:「the CLR類型到EDM類型的映射是不明確的,「這可能是由於打開兩個SqlEntityConnections,每個SqlEntityConnection都有一個具有相同名稱的表。使用SqlEntityConnection,CLR類型到EDM類型的映射是不明確的
然而,在這種情況下,這是因爲EF通過類型提供者顯然映射了系統表。實際的錯誤引用dtproperties表 -
{「指定的模式不是有效的錯誤:\ r \ n該CLR類型到EDM類型的映射是不明確的,因爲多個CLR類型匹配EDM類型‘dtproperties’。先前發現的CLR類型「SqlEntityConnection2.dtproperties」,新發現的CLR類型「SqlEntityConnection1.dtproperties」。「}
我怎樣才能改變這種表映射?謝謝。
(這是不是在原來的C#版本,也使用EF一個問題。)
我不知道如何過濾類型提供程序爲哪些表生成類型。如果您的項目中必須有兩個SqlEntityConnection派生類型,我會首先嚐試將它們放在不同的名稱空間中。如果這沒有幫助,那麼我想你總是可以刪除「dtproperties」表... –
@JoelMueller謝謝,我試過了不同的命名空間的東西,但它似乎沒有什麼區別。不幸的是,我無法刪除dtproperties而不會激怒DBA。 :( – rachel
你可能用無權查看「dtproperties」的用戶憑據連接到數據庫嗎? –