3

我正在尝试应用 J. Palermo 的洋葱架构,但我有一些事情正在努力解决。

我有一些零件,但我不知道该放在哪里。

  • 我有一个插件引擎,它读取目录并确定要加载的内容
  • 有一些在多个项目中使用的带有翻译的资源文件。我应该把这些文件放在哪里?
  • 我有一些在整个系统中使用的属性。把这些放在哪里?
  • 我还有两个“基本”控制器,一些默认结果和视图。我应该把这些放在哪里?

所有这些项目都在几个项目中使用,所以我想把这些项目放在一个中心点。

我当前的解决方案结构如下所示:

  • Project.Core(包含存储库的域对象和接口)
  • Project.Infrastructure(是实现的核心)

我正在使用 MVC2。

4

1 回答 1

1

我不认为这是 Onion 架构可以自行解决的问题。我要做的是将所有这些项目放在一个或多个项目中,在另一个解决方案中并构建 Nuget 包,允许我将它们部署到我需要它们的任何地方。这样我就可以在 MVC 项目中部署基本控制器等项目,在基础设施项目中部署插件/翻译内容。

这样,每当您需要在新创建的项目中使用这些元素时,您只需再次部署包。

这些项目将变得独立,存储在一个中心点(一个新的 sln),并将有自己的发布周期!

于 2012-12-05T15:26:06.927 回答