<分区>
在一个自分层树状结构中,我想在每个节点添加/编辑/删除时检查每个节点级别的业务规则(基于节点类型)。我尝试实现复合设计模式但没有成功。请提出建议。
示例类结构。
class Parent
{
int Id;
}
class ChildType1 : Parent
{
string propForType1;
List<Parent> ListOfChildren;
}
class ChildType2 : Parent
{
string propForType2;
List<Parent> ListOfChildren;
}
当我说业务规则时,这意味着这些规则是节点类型的特定约束。
例如:业务规则 1 - ChildType2 只能有 ChildType2 类型的子
业务规则 2 - ChildType1 应至少有 2 个子节点且 propForType1 值不应为空。
对于每个新节点添加/编辑/删除,我需要在每个节点检查这些规则,以便我的整体树满足所有业务规则。