【发布时间】:2012-05-30 21:04:40
【问题描述】:
我几乎可以肯定我忽略了一些简单的事情,但它没有点击。
我有一个 Person 实体(Person 聚合的根)。我还有一个用于身份验证和授权 (Auth) 的子实体,它具有角色列表和权限列表。
我希望通过根管理对角色和权限的修改,在根上使用 AddAuthRole 等方法。
这相当简单,但是我将如何在不暴露 Auth 实体中的任何类似功能的情况下执行此操作?我不希望消费者使用孩子的参考来尝试添加和删除这些列表。
我有一种感觉,这是一些基本的 OO 概念,我应该为自己不知道而感到羞耻……
【问题讨论】:
-
我知道你已经接受了答案,但 c# 在 System.Collections.ObjectModel 命名空间下确实有一个 ReadOnlyCollection 类。
标签: c# oop domain-driven-design aggregateroot