簡體   English   中英

具有MVC的經典ado.net的UOW +存儲庫

[英]UOW + Repository for classic ado.net with MVC

我已經從stackoverflow.com閱讀了兩個問題

  1. 仍使用經典ADO.NET嗎?
  2. 在經典ADO.Net中使用ASP.Net MVC

我真的很感謝他們兩個。
我非常喜歡Repository Design Pattern,因此我想在使用ASP.net MVC和Classic Ado.net的項目中使用它。

上面的第二個問題已經解釋了如何使用存儲庫模式和經典的ado.net技術。

我想知道的一件事是,就經典的ado.net技術而言,是否可以使用結合了工作單元的存儲庫模式。

有人可以給我有關此的任何參考鏈接嗎?

如果僅存在Repository + Classic Ado.net的參考,那么也請讓我知道該參考。

確實可以將UoW,存儲庫和“經典” ADO.NET組合在一起。

但是,您的UoW將需要根據實體類型進入相關的存儲庫。 您可以讓您的存儲庫實現通用接口。 例如:

public interface IRepository<T>
{
    void Add(T instance);
    T Get(Guid id);
    void Remove(Guid id);
    void Remove(T instance);
}

由於每個UoW是一個單獨的實例,您將要使用工廠。 然后,該工廠將把存儲庫注入UoW或為其提供一些IRepositoryProvider實例,該實例可以根據類型返回相關的存儲庫。 因此,從概念上講:

public interface IRepositoryProvider
{
    IRepository<T> Get<T>();
}

這些是廣泛的招,所以我希望這是有道理的。

IMO如果您要使用存儲庫和UoW,則沒有理由使用“經典” ADO.Net。 各種ORM框架都為您實現了Repository + UoW模式,您只需將它們插入應用程序即可(假設您的應用程序是圍繞這些模式設計的)。

我只用經典ADO.Net時,我不想使用存儲庫/ UOW模式(例如事務處理腳本模式)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM