Asp.net-Mvc
如何在 ADO.NET 中使用儲存庫和工作單元模式?
我正在建構 ASP.NET MVC 5 應用程序。
我在這裡閱讀了有關儲存庫和工作單元 (UoW) 模式的資訊。
這些範例使用實體框架,它本身添加了高級抽象。
我使用的是 ADO.NET 而不是 EF。我想知道:
- 儲存庫和 UoW 模式是否對 ADO.NET 有意義?
- 我的儲存庫和 UoW 將如何使用 ADO.NET?有樣品嗎?
- 我可以為 Repository 添加一個單獨的類庫或使其成為 DAL 的一部分嗎?
我寫了一篇博文,教你如何編寫獨立於驅動程序的程式碼,以及如何使用普通的 ADO.NET 實現 Uow/Repository 模式。
包含在這個答案中有點太長了,但基本上
IDbtransaction它將代表您的工作單元(或包含在一個工作單元中),並且每個儲存庫都將在其建構子中接受事務或 UoW。使用
IDbTransactionusing (var cmd = transaction.Connection.CreateCommand()) { cmd.Transaction = transaction; //do a CRUD operation here. }