0

У меня есть приложение ASP.NET MVC, которое использует классы Linq to SQL, помещенные в папку Model.Где я должен поместить дополнительные классы в мое приложение MVC

Я хочу создать дополнительные классы, которые я бы обычно размещал в своем BLL, но я не уверен, как работать с MVC.

С помощью WebForms у меня будет DAL как библиотека классов. My BLL как библиотека классов, которая ссылалась на мой BLL. Мой веб-сайт, на который ссылаются как DAL, так и BLL.

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

Если я затем добавлю (или попробую добавить) ссылку на мою библиотеку классов, я получу круговую зависимость.

В веб-формах. Моим другим вариантом было бы размещение классов в App_Code. Есть ли эквивалент App_Code в приложении MVC?

ответ

2

Вы можете переместить все ваши модели в библиотеку классов, не так ли? Ни MVC, ни VS не ума. Это позволит удалить зависимость библиотеки моделей в веб-приложении.

2

Вы можете разместить это в папке с образцом. Поскольку все связанные с бизнесом категории помещаются в эту папку

Для лучшей практики см. scottgu примеры nerddinner. Он создал дыхательные классы в приложении nerdinner.

+0

спасибо за отзыв scottgu. "Вы можете разместить это в классе модели" Возможно, вы имели в виду папку с моделью? –

1

Я согласен с условиями в Model. Вы можете организовать его до вашего сердца (BLL, DAL и т. Д.).

Лично я бы избегал делать отдельную сборку, если у вас нет веских оснований. Являюсь разработчиком, который, как правило, слишком усложняет проблемы, если я не осторожен, я стараюсь как можно больше следовать методам KISS (Keep It Simple Stupid), который, как правило, не позволяет мне избавиться от определенной проблемы.

1

Попробуйте взглянуть на архитектуру S # arp. Вы можете использовать шаблон, который они предоставляют, или использовать его в качестве ссылки, чтобы помочь вам принимать решения.

http://code.google.com/p/sharp-architecture/

Смежные вопросы