Идеальная структура папок для .NET MVC [закрыто]

Когда я начинал работать с .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

А как насчет вашего?

35
задан Jim G. 3 May 2011 в 14:44
поделиться