我正在寻找一个DI解决方案来帮助我管理对象关联,以适应需要根据同一对象中的其他成员值设置对象关联的情况。
因此,给定一个对象关联,其中Employee对象具有AddressId属性和相关的Address association属性,我如何以允许每个类保持松散耦合的方式从外部管理这些关联?
我的第一次尝试是使用IoC容器。在意识到我需要扩展容器以便它能够根据存储在IoC配置中的决策逻辑来解析类型实例时,我停止使用这种方法 - 这似乎是一个坏主意。 (将容器注入存储库会起作用,但会破坏我的组合根,所以它也不在桌面上。)据说,我不认为这是IoC容器的工作 - 否则说服我。
我做了一些研究,发现安迪·布尔卡的一篇论文叫Relationship Manager。 Bulka的设计需要一个管理协会的中介课程。我不确定这是否是最佳方法。
我确信社区中的某个人之前已经解决了这个问题。与此设计问题相关的DI最佳实践是什么?