2014-02-12 5 views
0

Я искал и искал возможные решения, но не нашел его. В принципе, нам нужно иметь несколько проектов в решении, так как большинство наших приложений mvc используют общую библиотеку, такую ​​как аутентификация AD, объекты SQL. И мы хотим, чтобы все наши веб-приложения mvc имели общий макет. Ниже приведены некоторые из возможных решений, предложенных другими я видел онлайн:Несколько проектов MVC в решении с общей компоновкой

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

  2. Razor generator - я проверил это. Я мог ошибаться, но этот инструмент используется в основном для обмена представлениями/контроллерами по всем проектам. Я не думаю, что это относится к тому, что я ищу.

+0

Поместите общий макет в пакет NuGet и установите пакет во всех проектах, которые хотят его использовать. –

+0

Я не уверен в вашем вопросе. Да, вы можете иметь несколько проектов в своем решении. Я сделал это в команде, где у нас были отдельные проекты (и библиотеки DLL) для объектов домена, оплата/учет, пользовательские элементы пользовательского интерфейса, уровень данных и т. Д. –

+1

Бритвенный генератор может также можно использовать для любого вида и для макета. @SamLeach. Не могли бы вы привести пример использования пакета NuGet в одном решении для совместного использования общего кода? –

ответ

0

Имея несколько MVC проект в растворе только для отделения их команд не является хорошей идеей, так как вам придется добавить много в конфигурации как в процессе развертывания и развития. как вы сказали, первое решение лучше. но я предлагаю вам использовать переносные области mvc, если вы действительно хотите отделить заботы своей команды и не нуждаетесь в нескольких автономных проектах mvc. вы можете встраивать _layout в библиотеку основных классов (сборку ядра для всех общих конфигураций ваших областей) и ссылаться на все классы.

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