Типичная структура решения ASP.NET? - PullRequest
12 голосов
/ 01 апреля 2009

Как видно из названия, мне интересно узнать, как вы обычно структурируете свои решения ASP.NET.

Меня особенно интересуют решения ASP.NET WebSite , но информация о других типах (WebApplication, MVC) также может быть интересна.

Некоторые конкретные вопросы:

  • что / сколько проектов / сборок содержит решение
  • как вы называете свои проекты библиотеки классов
  • какие пространства имен у вас обычно есть
  • у вас есть несколько пространств имен на проект / сборку или у вас строгое отношение 1: 1
  • и т.д.

Спасибо

Ответы [ 3 ]

4 голосов
/ 01 апреля 2009

Один из моих проектов выглядит так:

  • Sln
    • Sln.Core
    • Sln.Core.Test
    • Sln.Data
    • Sln.Data.Test
    • Sln.Web
    • Sln.Web.Test

Ядро - это модель домена и доменных служб, насколько они могут быть выполнены, не переходя в постоянство. Данные - это постоянный уровень, который в основном означает определения FluentNHibernate и конкретные реализации интерфейсов, определенных в Core. Web - это интерфейсный слой.

3 голосов
/ 21 апреля 2009

Я сделал что-то похожее на правосудие. Но с меньшим количеством проектов (и более быстрым временем компиляции)

Sln

  • Project.Core
  • Project.Web
  • Project.Test

Project.Core будет выглядеть так

  • Репозиторий
  • Домен
  • Presenter
  • Услуги
  • View
  • Общее

Я не получаю выгоду от нескольких (более 3) проектов. Вы не получаете тестабильности, и время компиляции становится намного больше.

Кроме того, первое, что я делаю, когда получаю проект веб-сайта, это преобразовываю его в веб-приложение. Но в целом мои проекты не меняются, когда я переключаюсь между веб-сайтами и веб-приложениями.

1 голос
/ 01 апреля 2009

Обычно я использую имя приложения для имени решения (используя общий тип проекта «Solution»), затем имею SolutionName.Site, SolutionName.Domain, SolutionName.Persistence и т. Д. ... для проектов, которые оно содержит. Похоже, легче справиться со всеми ссылками.

Хотелось бы увидеть ответы других людей. Хотя это лучший способ, который я нашел, я не могу избавиться от ощущения, что, возможно, есть лучший способ.

...