嘿,我有一堆inproc緩存和實體框架的應用程序。當我想寫一個實體的更新時,我會重新附加緩存副本。我追蹤了我在上下文生命週期中所附加的所有內容,因此我不會嘗試附加它們兩次。實體框架:多對多關係中的參照完整性約束違規
我有發生在連接(在大多數情況下,很少能正常工作,是真的快)的錯誤,說以下內容:
參照完整性約束衝突發生了:該屬性定義 值參考約束在關係中的主體和從屬對象之間不一致 。
我仔細看過看起來很正常的實體。我認爲這個問題是由於fixup運行時外鍵的附件/分離造成的。
有沒有一種很好的方法來獲得有關此錯誤的更多信息,或者是否可以因爲實體未處於EF不期望的狀態而發生此類錯誤?
編輯: DB圖(注意:我使用codefirst我只是用EDMX工具,使圖中,我也砍傷了一堆常規性的關閉模式爲簡單起見)
您是先使用代碼還是首先使用代碼 - 以及關於您擁有的模型的更多信息,與錯誤相關的表/類以及多對多映射。如果你先使用代碼,我更喜歡手動執行關係,這樣我就可以控制所有方面並避免類似的事情。另一方面,參照完整性錯誤可能意味着這一點 - 我不認爲它是對象的狀態,雖然它可能以我猜測的類似方式表現出來。 – NSGaga 2012-04-03 20:59:01
即時通訊使用CodeFirst,我的模型非常簡單,生病發布圖表 – 2012-04-03 21:04:37
盧克,你可以給CF部分,你如何映射事物 - 你的模型類是怎麼樣的,你的遷移代碼?爲了能夠幫助解決這個問題。 – NSGaga 2012-04-04 21:28:55