2

我有兩個問題,真的。什麼時候在Convention中通過配置添加新文件夾?

我看到有人向他們的項目添加一個Services文件夾。該文件夾的用途是什麼?

我看到Services和ViewModels的文件夾。現在我瀏覽了一篇關於存儲庫的文章。那麼是否每次我有新的使用類時,我都應該爲它們創建一個文件夾?例如,如果我有一個Repository類,那麼我應該創建一個Repository文件夾並將它們放在那裏而不是Models文件夾中?

回答

3

模型文件夾僅適用於查看模型。沒有其他東西屬於它。

我建議您將所有非UI邏輯移動到您從MVC項目中引用的單獨的類庫中。 Google separation of concerns

至於文件夾的命名方式,它從架構到架構各不相同。那些誰使用領域驅動設計趨向,而其他人創建的根文件夾命名文件夾

  • 基礎設施
  • 模型(域模型,而不是查看型號)
  • 服務

每個類型的模型,他們把所有相關類放入。

+0

你說:「模型文件夾僅用於視圖模型沒有別的它屬於。」在ASP.NET MVC中?我讀過並看到的所有內容都顯示它可以是域模型(對象或直接來自數據庫)或ViewModels。事實上,大量的MVC文章/教程告訴你製作一個單獨的ViewModels文件夾。 – dotnetN00b 2012-04-17 18:58:50

+0

這是因爲沒有現有的準則。任何人都可以鞭打例子,博客條目或基本的MVC項目,這很好。問題出現在應用程序增長時,您必須開始維護它。 MVC3項目是一個UI層,應該只包含UI邏輯。至少如果你想要一個結構良好的解決方案,使用問題分離。 – jgauffin 2012-04-17 19:09:30

+0

@ dotnetN00b:你想要更多的信息嗎? – jgauffin 2015-02-11 11:00:43

1

文件夾(通常)沒有g用於約定而不是配置。他們只是一種組織內容的方式。請記住,這通常也會爲該文件夾中的所有類創建一個名稱空間(文件夾名稱)。

在你的具體情況下,你需要做最有意義的事情。如果您爲您的存儲庫使用自定義POCO,那麼我會同意創建一個存儲庫文件夾。然而,Models文件夾實際上是MVC中的一種約定,其中由UI使用的模型應該存儲在那裏。

只要確保你的對象存儲在最符合邏輯的地方,你應該是好:)

相關問題