Byr*_*ahl 5 c# entity domain-driven-design class
我有一个StoreOwner实体.StoreOwner有一个Store属性.
public class Product { }
public class Store {
public IEnumerable<Product> Products { get; private set; }
}
public class StoreOwner {
public Store Store { get; private set }
}
Run Code Online (Sandbox Code Playgroud)
我有以下用户故事:
作为商店所有者,我可以将商品添加到商店.
"将商品添加到商店"的行为应该在哪里生活?在StoreOwner或商店?
如果它是商店,那么方法名称是什么?
我会将其放入 中Store
,因为我猜测产品集合是 中的子实体Store
。类似于Store.AddProduct()
暴露产品集合。
如果有逻辑确保只有当前所有者可以做到这一点,我相信只有在已经了解所有者的情况下才可以选择此操作,但在尝试所有操作之前绝对应该进行验证。Store
Store
AddProduct
该部分看起来像一个用户角色,因此也许这属于您的 UI 控制器,或者如果当前用户实际上是商店所有者,则可能将其纳入用户角色并对其进行授权。
归档时间: |
|
查看次数: |
62 次 |
最近记录: |