规则验证,顾名思义—针对特定的数据格式或业务规则选用特定的规则完成合法性验证。本文描述这样的一种简单场景:
大量终端用户通过应用系统提交模板信息,从而在服务端批量完成业务处理(支付、充值、转账、……),当然数据存在复杂、不确定性,故此可通过设定模板中指定行列的数据格式,批量完成特定行列的格式校验,通过将规则DB化,一方面可后期维护动态变化的规则项, 另一方面也有利于流程性业务类规则的验证(对特定业务流程类规则校验暂不讨论)。
§ 数据结构

§ 数据示例
Merchant_Batch_Type:

Merchant_Batch_Rule:

Merchant_Batch_Checker :

§ 实现
通过规则缓存,获得当前数据行验证规则项,验证返回
if (BatchRuleService.AccountRuleList == null)
{
BatchRuleService.AccountRuleList = BatchRuleService.Instance.GetRulesList();
}
BatchPaymentRule rule = BatchRuleService.AccountRuleList.Find(delegate(BatchPaymentRule r)
{
return (r.CellRowID == "x" || r.CellRowID.ToString() == r.CellColumnID.ToString())
&& r.CellColumnID == cellColumnID.ToString();
});
if (rule != null && cellText.IsValidFormat(rule.RuleExpression) == false)
{
}
1312

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



