12、CSLA .NET 业务和验证规则子系统详解

CSLA .NET 业务和验证规则子系统详解

1. 规则概述

在 CSLA .NET 中,业务和验证规则是实现业务逻辑的关键部分。当通过 SetProperty() 辅助方法设置可编辑业务对象的属性时,规则会被调用。开发者也可以通过显式调用 ValidationRules 对象的 CheckRules() 方法来触发规则。

当验证规则被违反或恢复正常时,它们会被添加或移除到一个违反规则列表中。每个可编辑业务对象都有一个当前违反规则的列表,如果该列表为空,则 IsSelfValid 属性为 True ,否则为 False 。这个列表不仅用于驱动 IsSelfValid 属性,还被 IDataErrorInfo 实现用于数据绑定支持。

2. 规则类型
  • 按类型关联规则 :通常,规则按类型与业务对象关联,这意味着特定业务对象类型(如 CustomerEdit )的所有实例将对相同属性应用相同规则。这种方式节省处理时间和内存,因为规则与属性的关联工作只需对该类型进行一次,信息可在该类型的所有实例中复用。
  • 按实例关联规则 :也可以按实例将规则与业务对象关联,即每个业务对象实例都有自己的规则。这种方式在创建对象实例时设置关联并存储在内存中,但如果有大量实例,会导致性能和内存消耗问题,因此一般应避免使用。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值