0
在我的上下文中,我有兩個實體,實體A從B繼承,它們映射到流暢的API並工作了一段時間。EF6 - 刪除基本類記錄
但現在我需要改變它,當基本實體被刪除時,我需要在數據庫中維護實體B。
EF6上有可能嗎?默認行爲是從兩個表中刪除記錄。
我想將它從繼承改爲組合,但寧願只改變刪除行爲。
在此先感謝。
在我的上下文中,我有兩個實體,實體A從B繼承,它們映射到流暢的API並工作了一段時間。EF6 - 刪除基本類記錄
但現在我需要改變它,當基本實體被刪除時,我需要在數據庫中維護實體B。
EF6上有可能嗎?默認行爲是從兩個表中刪除記錄。
我想將它從繼承改爲組合,但寧願只改變刪除行爲。
在此先感謝。
只要A不是摘要,它就可以工作。 如果您刪除TPT映射的對象,EF將爲基礎發送兩個刪除語句,一個用於繼承的表。
您可以使用命令攔截器來防止執行基本刪除,或者您可以使用存儲過程映射進行刪除。
如果A是抽象的,您可以繼承DeletedA類並在DeleteA存儲過程中創建對應的entiry。
謝謝,這真是我以前沒有的方式。 – bateloche
你應用了什麼類型的繼承?表每類型? B有自己的表和表A(它提供了A的附加屬性)引用表B,對嗎?而當你刪除A時,你想把行保留在B中,對嗎? – mr100
我有兩個表,一個用於基類,另一個用於孩子。 – bateloche