Рассмотрим проект MVC4/EF5:
- Создание веб-приложения, которое будет состоять из 3 модулей.
- В зависимости от лицензии клиента мы включим или отключим 1-3 модуля.
- Каждый из модулей будет иметь дело с несколькими общими таблицами (Пользователи, Компания и т. д.).
- Каждый из модулей будет иметь дело с таблицами, характерными для их функций (заказы на поставку, табели учета рабочего времени и т. д.).
- Портал администратора, пользователи-администраторы в отдельной таблице от обычных пользователей.
- данные, передаваемые в представления с использованием моделей представлений
- в конечном итоге появится служба JSON для демонстрации частей функциональности приложений.
- Будет несколько развертываний этого приложения с небольшой настройкой (помимо простого включения/отключения каждого из трех модулей).
План на данный момент:
- Отдельная dll для модели
- Отдельная dll для каждого модуля/функциональной области.
- Отдельная dll для ViewModels
- Отдельная dll для административного портала
- Отдельная dll для веб-сервиса
Вопросы:
- Что-нибудь дает отдельная dll для ViewModels?
- Советы по управлению несколькими вариантами одного и того же приложения в отношении организации проекта и контроля версий?
- Должна ли быть отдельная dll для аутентификации (поставщики членства и ролей)?
- Любые другие мысли? (Извините за открытый/загруженный вопрос, возможно, мне следует удалить этот вопрос)