CSLA .NET 业务和验证规则子系统详解
1. 规则概述
在 CSLA .NET 中,业务和验证规则是实现业务逻辑的关键部分。当通过 SetProperty() 辅助方法设置可编辑业务对象的属性时,规则会被调用。开发者也可以通过显式调用 ValidationRules 对象的 CheckRules() 方法来触发规则。
当验证规则被违反或恢复正常时,它们会被添加或移除到一个违反规则列表中。每个可编辑业务对象都有一个当前违反规则的列表,如果该列表为空,则 IsSelfValid 属性为 True ,否则为 False 。这个列表不仅用于驱动 IsSelfValid 属性,还被 IDataErrorInfo 实现用于数据绑定支持。
2. 规则类型
- 按类型关联规则 :通常,规则按类型与业务对象关联,这意味着特定业务对象类型(如
CustomerEdit)的所有实例将对相同属性应用相同规则。这种方式节省处理时间和内存,因为规则与属性的关联工作只需对该类型进行一次,信息可在该类型的所有实例中复用。 - 按实例关联规则 :也可以按实例将规则与业务对象关联,即每个业务对象实例都有自己的规则。这种方式在创建对象实例时设置关联并存储在内存中,但如果有大量实例,会导致性能和内存消耗问题,因此一般应避免使用。
超级会员免费看
订阅专栏 解锁全文
6

被折叠的 条评论
为什么被折叠?



