我正在使用基於數據庫優先的方法構建的使用EF 6的項目。有幾個表格先前具有映射到複雜類型的相同3個屬性(在代碼中的多個位置使用)。這些屬性被指定爲「外鍵」列,儘管它們的父子關係從未在數據庫中定義過。實體框架6將現有的複雜類型添加到關鍵列
最近,一名合作者在SQL Server中完成並正式定義了FK和它們的父表之間的關係。我現在試圖更新實體模型(從數據庫更新),並且新的關聯沒有出現。我已經採取從模型中刪除表並重新添加它們。他們現在顯示正確的關聯。
但是,到複雜類型的映射消失了。當我嘗試添加它時,更新後的映射將銷燬這些屬性的關聯(保存時出現模型錯誤)。我知道複雜類型不支持關聯。
建議您在將列重新映射到複雜類型之前先刪除列的關聯?即使列在實體上不可見,EF是否會觀察到基礎密鑰關係?