簡體   English   中英

推薦的IRepository和IRepository <T> C#中的接口

[英]Recommended IRepository and IRepository<T> interface in C#

我正在為我的mvc web應用程序尋找一個簡單的IRepository接口,我已經做了很多搜索,並且有很多人的意見。 所以我決定問專家

如果您可以推薦常用的IRepository和IRepository接口,並回答基本的CRUD和查詢操作(以支持過濾)。

如果您知道包含實現的框架並且可以使用EF 4,我很樂意,如果您能提及它們。

謝謝。

編輯 :由於@Ladislav建議什么是替代方案,總是從我的代碼中調用linq到ADO.net調用? 使用從我的業務模型中抽象創建自定義POCOS的POCO存儲庫是一個好主意,我有一個需要從不同數據庫條目中解析的Jewel POCO類,這是遺留系統的常見做法,我不能觸摸數據庫架構,但只觸及演示文稿

停下來 模式應該在需要時使用 - 當它們解決一些常見問題時 - 而不是因為它們存在。 你顯然現在不需要它,因為你沒有寫任何單一的要求存儲庫應該為你解決的問題 - 如果你想選擇一個“好的”,那么這些要求是至關重要的。 無論如何,一個好的通常在你的開發過程中發展,它通常不是預先定義的。

使用EF的通用存儲庫也是我在我自己的項目中使用過的最愚蠢的模式之一。 只有成為特定存儲庫的父級才是好的。 它僅適用於您通常根本不需要存儲庫的基本場景。

需要閱讀的內容: 通用存儲庫的重點是什么

存儲庫模式非常簡單......您實際上不需要使用現有框架。 您可以自己構建界面。 在人們建立自己的博客中有很多很好的例子,並允許他們在測試中接近100%的代碼覆蓋率。 以下是一些示例(但它們都遵循類似的模式):

將存儲庫模式與實體框架一起使用 (Gil Fink)

100%UNIT TESTABLE LINQ TO SQL存儲庫 (Kazi Manzur Ra​​shid) - 我實際上是在他的工作中關注他的一些例子

協同工作:LINQ to SQL,IRepository,工作單元和依賴注入 (Stuart Harris)

而且還有更多。

我認為自己構建它,特別是如果你只是學習模式,肯定會教會你很多關於模式的知識,並且讓你深入了解什么對你的情況有效,什么沒有。

我希望這有幫助! 祝好運。

暫無
暫無

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

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