Domain driven design ich是在UI是AR类上不必要的约束的情况下建模的,您将花费大量的精力来实现它。此外,这是一个脆弱的解决方案。如果视图需要与客户相关但不属于客户类的数据,该怎么办?然后是否强制customer类和相应的ORM映射包含该数据?为什么不为查询目的创建一组单独的

Domain driven design ich是在UI是AR类上不必要的约束的情况下建模的,您将花费大量的精力来实现它。此外,这是一个脆弱的解决方案。如果视图需要与客户相关但不属于客户类的数据,该怎么办?然后是否强制customer类和相应的ORM映射包含该数据?为什么不为查询目的创建一组单独的,domain-driven-design,aggregateroot,fetching-strategy,marker-interfaces,Domain Driven Design,Aggregateroot,Fetching Strategy,Marker Interfaces,ich是在UI是AR类上不必要的约束的情况下建模的,您将花费大量的精力来实现它。此外,这是一个脆弱的解决方案。如果视图需要与客户相关但不属于客户类的数据,该怎么办?然后是否强制customer类和相应的ORM映射包含该数据?为什么不为查询目的创建一组单独的类并使用它来完成呢?这允许您在它们所属的位置(存储库中)处理获取策略。此外,抓取策略接口抽象真正增加了什么价值?它可能是应用程序中正在发生的事情的适当模型,但无助于实现它。感谢您的这一观点!我在使用CQR的同时也使用了这种技术,我读了很多关于C


ich是在UI是AR类上不必要的约束的情况下建模的,您将花费大量的精力来实现它。此外,这是一个脆弱的解决方案。如果视图需要与客户相关但不属于客户类的数据,该怎么办?然后是否强制customer类和相应的ORM映射包含该数据?为什么不为查询目的创建一组单独的类并使用它来完成呢?这允许您在它们所属的位置(存储库中)处理获取策略。此外,抓取策略接口抽象真正增加了什么价值?它可能是应用程序中正在发生的事情的适当模型,但无助于实现它。

感谢您的这一观点!我在使用CQR的同时也使用了这种技术,我读了很多关于CQR的文章
IStrategyForFetching
不必返回聚合,它可以仅为列表中的客户返回投影。我的建议是,我们可以要求ICCustomerInList角色,而不是直接与
CustomerQueryService
对话,系统的一部分知道如何为我们获取该角色。它类似于
IValidate
marker接口模式。这些接口可以看作是视图模型。Udi建议服务层以不同于域层的速率变化。因此,在每一层之间有一个间接层是很好的。我可以向“系统”询问
ICCustomerInList
,然后通过CQR直接从数据库中读取数据。我的问题是关于“系统”
IStrategyForFetching
vs
IfetchCustomerInList