NoP*_*God 7 domain-driven-design repository-pattern
如何在DDD中授予用户配置设置的访问权限?
我们有一个配置数据库,它将项目存储为一堆键值对.这似乎并不适合存储库模式,因此如何使用户能够访问这些配置值?
理想情况下,我想为不同的配置分组设置单独的类,即.. BillingSettings,ReportSettings,TaxSettings.
为每个这些设置提供单独的存储库似乎很奇怪,但我还想保持这些设置类的持久性无知.
在DDD中启用配置访问的正确方法是什么?
我通常做的只是使用接口抽象配置,例如IBillingConfiguration,IReportConfiguration等等。这些的实现然后被传递到相关方法中(或注入到相关对象中)。
价值观从何而来真的不重要。有时,我在将值存储在数据库中时确实使用存储库,然后我会得到类似IConfigurationPropertyRepository. 这有点尴尬,因为 aConfiruationProperty不太像是实体世界中的一等公民,但它似乎确实完成了工作。
我将返回 a 的一些实现,它只是从底层集合或对象IBillingConfiguration中获取所需的属性。ConfigurationProperty
每个的相关方法Get和方法将在 上实现,以便我只获取/保存需要应用的属性的子集。SaveI{Some}ConfigurationConfigurationPropertyRepository