2010-06-15 69 views
0

我正在使用我的應用程序中的存儲庫方法,我有一個非常基本的問題。在ASP.NET MVC中構建數據存儲庫的正確方法

當我建立我的模型,我有一個Data.dbml文件,然後我把我的資料庫中與它同一個文件夾.... IE:

Data.dbml
IUserRepository。 cs
UserRepository.cs

我的問題很簡單。建立像上面那樣的文件夾結構會更好嗎,還是隻需將我的接口放入UserRepository.cs中就可以了?

Data.dbml
UserRepository.cs                         其中既包含了接口和類

只是這裏尋找 「最佳實踐」 。提前致謝。

回答

2

一般的最佳做法是每個文件有一個類或一個接口。

這裏是更通用的討論,我認爲適用於您的情況: One class per file rule in .NET?

至於項目的新的開發人員,我希望知道IUserRepository存在 - 而不必通過您的UserRepository.cs魚文件。

+0

謝謝。我將爲每個班級使用一個單獨的文件。 – 2010-06-15 06:09:16

0

做任何有意義的事。

就我個人而言,我覺得任何痛苦的瀏覽解決方案,所以我有熱鍵控制轉到定義/執行和Resharpers FindUsages轉到類型,轉到文件,所以我不必點擊任何東西。

如果類或接口很小,將接口和類合併到一個文件中是有意義的。

此外,如果您遵循Liskov substitution principal /依賴注入策略和一般良好的設計實踐,你很少會與實際的實現進行交互。存儲庫幾乎從來不會被其具體實現引用。

+0

謝謝你。您能否詳細說明'存儲庫應該幾乎不會被具體實現引用。「? – 2010-06-15 03:48:15

+0

@rockinthesixstring 當您需要使用某個類時,您不會引用具體實現,而是使用該接口。所以,如果你要使用依賴注入,你的依賴不會是Repository,而是IRepository。 – Min 2010-06-15 04:02:20

+0

所以這樣的事情? 'Dim usr As UrbanNow.Core.IUserRepository = New UrbanNow.Core.UserRepository' – 2010-06-15 04:44:38

相關問題