验证组件——FluentValidation

      FluentValidation

  FluentValidation是与ASP.NET DataAnnotataion Attribute验证实体不同的数据验证组件,提供了将实体与验证分离开来的验证方式,同时FluentValidation还提供了表达式      链式语法。

地址:

https://github.com/JeremySkinner/FluentValidation

     static void Main(string[] args)
        {
            //非空验证
            TestValidator validator = new TestValidator(v => v.RuleFor(x => x.Surname).NotNull());
            var result= validator.Validate(new Person { Surname = "Foo" });//true
            Console.WriteLine(result.IsValid);
            result = validator.Validate(new Person { Surname = null});//false
            Console.WriteLine(result.IsValid);

            validator = new TestValidator {
                v => v.RuleFor(x => x.Surname).NotEmpty()
            };
             result = validator.Validate(new Person { Surname = null });
            Console.WriteLine(result.IsValid);

        }
 public class Person
    {
        public string NameField;
        public int Id { get; set; }
        public string Surname { get; set; }
        public string Forename { get; set; }

    }

源码有很多测试示例

时间: 2025-01-05 06:53:57

验证组件——FluentValidation的相关文章

asp.net mvc 模型验证组件——FluentValidation

示例 1 using FluentValidation; 2 public class CustomerValidator: AbstractValidator<Customer> { 3 public CustomerValidator() { 4 RuleFor(customer => customer.Surname).NotEmpty(); 5 RuleFor(customer => customer.Forename).NotEmpty().WithMessage(&qu

entlib验证组件

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Microsoft.Practices.EnterpriseLibrary.Validation; using Microsoft.Practices.EnterpriseLibrary.Validation.Validators; //https://m

ASP.NET通用权限验证组件实现

沙发(SF)通用权限验证组件 开篇 本篇介绍通用权限验证的实现代码思路,总共分为导入参数.解析XML.根据XML配置进行处理.返回结果. 代码架构图 1.   类介绍 1.SFWebPermission:实现IHttpModule接口,权限验证入口: 2.SFConfig:导入XML配置类: 3.SFPermission:解析XML配置进行权限验证: 4.SFAccessOper:数据库操作类: 5.SFPermissionSQL:XML节点实体类: 6.SFParameter:XML节点实体类

容器扩展属性 IExtenderProvider 实现WinForm通用数据验证组件

大家对如下的Tip组件使用应该不陌生,要想让窗体上的控件使用ToolTip功能,只需要拖动一个ToolTip组件到窗口,所有的控件就可以使用该功能,做信息提示. 本博文要记录的,就是通过容器扩展属性 IExtenderProvider,来实现一个数据验证组件,通过将组件拖动到窗口后,使得上面的所有控件可以实现数据验证! 设置下面两个扩展属性,即可使用组件 调用开放的验证方法public bool VerifyData(Control ct = null)后,验证样式为: 1.实现思路: 通过记录

自定义react数据验证组件

我们在做前端表单提交时,经常会遇到要对表单中的数据进行校验的问题.如果用户提交的数据不合法,例如格式不正确.非数字类型.超过最大长度.是否必填项.最大值和最小值等等,我们需要在相应的地方给出提示信息.如果用户修正了数据,我们还要将提示信息隐藏起来. 有一些现成的插件可以让你非常方便地实现这一功能,如果你使用的是knockout框架,那么你可以借助于Knockout-Validation这一插件.使用起来很简单,例如我下面的这一段代码: ko.validation.locale('zh-CN');

.NET业务实体类验证组件Fluent Validation

认识Fluent Vaidation. 看到NopCommerce项目中用到这个组建是如此的简单,将数据验证从业务实体类中分离出来,真是一个天才的想法,后来才知道这个东西是一个开源的轻量级验证组建. Fluent Validation 翻译为:流畅验证 开源Codeplex其主页简介:该组件是一个轻量级的.NET类库,使用流畅的接口定义和lambda表达式为构建一个业务类的验证规则(A small validation library for .NET that uses a fluent in

FMS发布源验证组件auth_addin_win_v3.msi用法

原文地址:http://www.lijiangtv.com/home.php?mod=space&uid=1&do=blog&id=9253 WMS可以集成Windows用户,来验证一个发布请求是否合法.FMS在默认情况下,并没有验证发布者身份的过程,这无疑是一个重大的安全隐患.Adobe发布的auth_addin_win组件可以弥补这一点. ===========以下摘录自 http://blog.sina.com.cn/s/blog_5d8ca1e90100dkw0.html

form自动验证组件(Tinyshop)-笔记

验证对象: Input.textarea 验证内容: 1.   多个输入组件值是否相同(输入密码和重新输入密码是否一致) 2.   模式匹配 3.   Input.textarea组件其他属性(自带和自定义)如maxlength等 验证结果提示显示: 1.   结果小图标("√"和"×")直接显示在输入框同行,包括提示信息 2.   提示信息换行显示 3.   集中显示在form表单的底部(可自行修改) 关键部分: 输入内容是否一致:这个组件使用bind属性绑定相同

EasyUI - ValidateBox 验证组件

基本效果: 效果: Html代码: <input id="email" /> JS代码: 默认的有四种验证方式: email:验证邮箱 url:验证url length:验证输入长度 remote:Ajax后台验证,具体参数见注释. $(function () { $('#email').validatebox({ required: true,//必填项 // * 默认的是四种,可以自己写方法 * validType: 'email',//验证邮箱 //validType