c # MVC - структура папок - куда ставить классы? - PullRequest
4 голосов
/ 16 сентября 2009

В asp / net MVC проект делится на Модели, Представления и Контроллеры. Пока все хорошо.

Скажем, у меня есть класс 'person', который диспетчер людей заполняет данными, используя модель person.

Где лучше всего поместить мой класс person.cs? В папке контроллеров или моделей? Что ты делаешь?

Спасибо

Frank

Ответы [ 3 ]

5 голосов
/ 16 сентября 2009

Я бы создал в проекте другой проект библиотеки классов, определил бы мои классы и затем использовал бы ссылку на мою библиотеку в моем приложении ASP.Net MVC.

WebApp Solution
|-MyMVCProject
  |-Models
  |-Controllers
  |-Views
|-MyMVCProject.Domain (you'd put your models here)
  |-Person.cs
|-MyMVCProject.Services (you'd put entity services here)
5 голосов
/ 16 сентября 2009

Я бы посчитал Person моделью и поместил бы ее в папку Models. Здесь я храню свои модели зрения. Бизнес-модели обычно хранятся в отдельном проекте данных - мне нравится, чтобы мой слой данных был автономным, поэтому я могу использовать его в других проектах, если захочу. Возможно, вы захотите создать отдельные библиотеки классов для других типов классов - методов расширения, помощников и т. Д., Которые не входят в категорию контроллеров или моделей.

1 голос
/ 16 сентября 2009

В настоящее время работая над довольно большим проектом, мои классы разделены на различные проекты библиотек классов, которые называются Repository (для интерфейсов доступа к данным и классов бизнес-данных), Utils (для служебных классов) и DataAccess (реализации интерфейсов репозитория). Под ними я делю их на подкаталоги (или я должен сказать пространства имен), а затем использую Resharper для реализации этих пространств имен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...