考虑一个 MVC4/EF5 项目:
- 创建一个包含 3 个模块的 Web 应用程序。
- 根据客户许可证,我们将启用或禁用 1-3 个模块。
- 每个模块都将处理一些常见的表(用户、公司等)。
- 每个模块都将处理特定于其功能的表格(PO、时间表等)
- 一个管理员门户,管理员用户与普通用户在一个单独的表中。
- 使用视图模型传递给视图的数据
- 最终将有一个 JSON 服务用于公开部分应用程序功能。
- 此应用程序将进行多次部署,并进行轻微定制(不仅仅是启用/禁用三个模块中的每一个)。
到目前为止的计划:
- 模型的单独 dll
- 每个模块/功能区域的单独 dll。
- ViewModel 的单独 dll
- 用于管理门户的单独 dll
- 用于 Web 服务的单独 dll
问题:
- ViewModels 的单独 dll 有什么好处吗?
- 在项目组织和源代码控制方面管理同一应用程序的多个变体的技巧?
- 是否应该有一个单独的 dll 用于身份验证(成员资格和角色提供者)?
- 还有其他想法吗?(对不起开放式/加载的问题,也许我应该删除这个)