在我刚开始学习.NET Webforms时,我没有太多麻烦来寻找一个文件夹结构,因为VS提供了应用程序文件夹(例如“App_Code”),而大多数应用程序示例将“BLL”、“DAL”放在其中等等。
但是现在,在MVC中,我检查的每个示例都使用不同的结构,似乎没有标准化,我在Google或SO上也没有找到好的解决方案。
因此,也许我们可以分享如何组织我们的MVC项目,这可能有助于其他人自己形成想法。以下是我用于小到中型项目的结构:
App_Data
Areas
Admin
Controllers
Models
Views
MyAccount
Controllers
Models
Views
Content
Images
Scripts
Styles
Controllers
HomeController.cs
Helpers
ExtensionMethods // I.e. based on HtmlHelper, use "helper" suffix
MenuHelper.cs // to be called as html.Menu()
Utilities.cs // Other generic (static) libraries, no suffix used
Models
ViewModels // for passing models to Views
RegisterViewModel.cs // use "ViewModel" suffix
Customer.cs // to extend models like adding Model Validation
Repositories
CustomerRepository.cs // use "Repository" suffix
Services
CustomerService.cs // use "Service" suffix, to move code away from controllers
Views
Home
Index.cshtml
Register.cshtml
Shared // Site Layouts (Master templates), also put partials here
SiteLayout.cshtml
你的情况怎样?
.cshtml
!那是什么? :) - Maxim Zaslavsky