我想知道是否可以重寫ObjectContext.SaveChanges()方法並編寫我們自己的sql邏輯來保存對對象上下文中的實體所做的更改,而不是依賴實體框架將這些更改保存到數據庫中。是否有可能重寫實體框架中的ObjectContext.SaveChanges方法?
0
A
回答
1
2
一般來說,你可以,如果你重寫SaveChanges
,不叫base.SaveChanges
,但你將失去所有的EF塞入會爲你做你想要的任何東西。這意味着您將不得不手動瀏覽元數據並將您的實體映射到SQL表和列。就像你自己寫了一半的ORM一樣。
如果在持久化實體時只需要一些小的自定義邏輯,則可以將導入的存儲過程映射到實體設計器中的插入,更新和刪除操作。
0
@Ladislav是正確的,存儲過程是一種方法來做到這一點(+1)。
另一種方法是編寫一個wrapper provider。
相關問題
- 1. 實體框架和ObjectContext.SaveChanges()
- 2. 是否有可能返回所有列的實體的數據實體框架
- 3. 是否有可能重寫第三方庫中的方法?
- 4. 是否有可能重寫C#中WebSecurity類中的方法?
- 5. 是否有可能使用實體框架4.1(EF4.1)
- 6. 實體是否可以從實體框架的ObjectStateManager中卸載?
- 7. 是否有可能在Java中重寫String的compareTo方法?
- 8. 是否有可能在Swift中重寫UIButton的操作方法?
- 9. 是否有可能重寫Python中的namedtuple方法?
- 10. 是否所有實體框架方法都使用異步?
- 11. 實體框架:是否有一種方法可以比較EntityObject的相同值?
- 12. 是否有可能在實體框架中使用現有類作爲POCO
- 13. 是否有可能在實體框架中具有逆導航屬性?
- 14. 實體框架,方法
- 15. FindBy方法實體框架
- 16. 是否有可能不映射在ADO.NET實體框架中的關聯
- 17. 是否有可能刪除實體框架中的鏈接導航屬性
- 18. 是否有可能重寫屬性的方法?
- 19. 是否有可能重寫這個棘手的擴展方法?
- 20. 實體框架ObjectContext.SaveChanges上唯一鍵列更新失敗
- 21. 是否有可能在linq中選擇一個字符串到實體框架?
- 22. 是否有可能在實體框架6.1中執行種子遷移
- 23. 是否有可能在一個實體框架查詢中禁用代理?
- 24. 是否有可能在實體框架6中將ObjectSet轉換爲DbSet?
- 25. 實體框架,是否有可能在where子句中使用substract
- 26. 是否有可能重寫android CalendarView方法?
- 27. 是否有可能重寫jquery.validate各種驗證方法?
- 28. 實體框架V1,PredicateBuilder,LINQ到實體未能解決方法
- 29. 是否有可能跟蹤ObjectContext.SaveChanges的進度?
- 30. 是否有可能重寫play.api.libs.json寫入選項的方式?
問題是,保存更改將只是插入,更新,刪除,哪些EF將會正確地做到這一點,以及您要進行的任何驗證,您可以在保存前進行驗證。你到底想做什麼? –