在使用洋葱架构时将共享部件放在哪里?
-
12-12-2019 - |
题
我正在尝试通过J. Palermo申请洋葱架构,但我有一些我正在努力的事情。
我有几个部分,我不确定在哪里放在哪里。
- 我有一个插件引擎,它读取目录并确定要加载的内容如何做到
- 在多个项目中使用具有翻译的资源文件。我应该在哪里放下这些文件?
- 我有一些在整个系统中使用的属性。把这些放在哪里?
- 我还有两个'基本'控制器,一些默认结果和视图。我应该把这些放在哪里?
所有这些项目都用于多个项目,所以我想把物品放在中心点。
我当前的解决方案结构Looke:
- project.core(包含存储库的域对象和接口)
- project.infrastructure(是核心的实施)
我正在使用mvc2。
解决方案
我不认为这是洋葱建筑本身可以解决的事情。 我本来所做的,就是把所有这些项目放在一个或多个项目中,在另一个解决方案中,建立nuget包,允许我在我需要它们的任何地方部署它们。 这样我将在基础架构项目中的MVC项目和插件/翻译中部署库中的基础控制器等项目。 这种方式,只要您需要在新创建的项目中提供这些元素,您只需再次部署包即可。
这些物品将独立,存储在中心点(新SLN)中,并将拥有自己的发布周期!
不隶属于 StackOverflow