我正在为即将到来的内部应用程序建立一个项目结构,以试用由Palermo提出的Onion Architecture(http://jeffreypalermo.com/blog/the-onion-architecture-part-3/)。
我遵循了他的指导方针,但是到目前为止,我需要对项目的结构进行一些验证。
在图表之前,存在以下问题:
但可以进行一些验证。
helper 去?这对所有其他项目都有引用吗?
简化的概念图如下(文件夹代表 namespace ):
最佳答案
1看起来还可以,但是我不确定将依赖关系解析插入到图中是一个好主意。
2我相信依赖注入(inject)的东西会在这里。
3它是根据巴勒莫图的核心。从根本上讲,您将拥有与DAL和域模型相关的存储库,以及与存储库和域模型相关的服务(而非Web服务)。 UI/Web服务将主要与服务对话。
4同样,我认为答案就在巴勒莫的图中。但是我认为,如果对架构有充分的了解,组织项目可能会变得不同而琐碎。
一旦我了解了DDD和必要的设计模式(例如MVC,依赖注入(inject),存储库/服务,ORM),洋葱体系结构就变得显而易见。