Arn*_*kas 2 c# design-patterns domain-driven-design ddd-repositories repository-pattern
我有以下数据结构:
class Post
{
public string Title { get; set;}
public Category Category { get; set;}
}
Run Code Online (Sandbox Code Playgroud)
请记住一个帖子总是属于一个而且只有一个类别是我的推理正确吗?
Category是聚合根(因为没有帖子就不能存在)CategoryRepository(带的方法,例如GetCategory和GetPost),但不是一个PostRepository(因为Post不是汇总根)你想如何引用实例Post?是Post.Title一个唯一的标识符Post?如果是这样,那么它Post 是一个有效的聚合根,你应该创建一个PostRepository检索Post给定它的实例Title.
以汽车为例.汽车必须有颜色,但是说明颜色是聚合根只是因为没有汽车就不能存在,这是错误的.我想独立引用一辆车,因为它的牌照号码(与其颜色无关).它必须具有颜色这一事实只是我的汽车领域模型的一个特征,它表明我不能在不提供颜色的情况下构建汽车实例.