前情回顾:上一篇 0) 目录以及库结构介绍 简单描述了下库的代码结构本文将从接口部分阐述总体的思路1) 接口介绍以及总体思路概述如下图,我总共定义了10个Interface这些实际可分为两类:为了支持 Fluent 语法格式而定义的各个创建者接口:IFluentRuleBui ...
前情回顾:
上一篇 0) 目录以及库结构介绍 简单描述了下库的代码结构
本文将从接口部分阐述总体的思路
1) 接口介绍以及总体思路概述
如下图,我总共定义了10个Interface
这些实际可分为两类:
- 为了支持 Fluent 语法格式而定义的各个创建者接口:
- IFluentRuleBuilder
- IRuleBuilder
- IRuleMessageBuilder
- IValidateRuleBuilder
- IValidatorBuilder
- IValidatorSetter
- 验证操作涉及的规则、结果、验证调用接口的定义:
- IRuleSelector
- IValidateResult
- IValidateRule
- IValidator
接下来我们首先阐述下验证使用方式的接口设计思路,
然后再介绍 Fluent 格式的规则设置方式的设计思路。
(1)验证使用方式的接口设计思路
我们首先考虑的用户的验证使用方式,而且我们是提供用户自行设置验证规则,不是只是提供一些固定的验证规则,
那么用户其实只是想给一个数据,然后拿到对应的结果就行
所以大致接口设想就是
public interface IValidator{ object Validate(object data);}
原标题:实现一个对象验证库系列
关键词:
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。