Asp.net-Mvc

如何在 MVC 中實現工作單元:責任

  • April 1, 2011

誰有責任


誰負責在 MVC 架構中啟動和完成工作單元?

這不是控制器的責任,它違反了SRP。控制器甚至根本不應該知道 UoW。在 Web 中,通常使用對伺服器的每個請求一個 UoW。在這種情況下,UoW 應該在請求結束時處理,並在請求開始之後的某個地方開始(理想情況下,UoW 的開始應該是惰性的)。執行此操作的最佳位置是使用 Application_EndRequest 和 Application_BeginRequest 處理程序的 Global.asax(或您的 HttpApplication 類)。

這可以通過 IOC 框架(我最喜歡的是 Windsor)輕鬆實現,有關實現細節,請參閱此問題。

引用自:https://stackoverflow.com/questions/2238428