本人国庆无聊,不知道干嘛,
所以模仿FluentValIDation写了个简化版的ObjectValIDator
个人设想是能用类似fluent的方式创建验证规则,然后使用者缓存并验证自己的对象
现在第一次在博客园发了这篇文章,希望各位大神能在百忙之中抽空批评教育我,个人感激不尽
源代码:代码放在了 https://github.com/fs7744/ObjectValidator
nuget:https://www.nuget.org/packages/ObjectValidator/
使用示例:1 Container.Init(); // Only need init in your app once 2 3 var builder = ValIDation.NewValIDatorBuilder<Student>(); 4 builder.RuleSet("A",b => 5 { 6 b.RuleFor(i => i.Age) 7 .Must(i => i >= 0 && i <= 18) 8 .OverrIDename(student age" 9 .OverrIDeError(not student10 .ThenRuleFor(i => i.name)11 .Must(i => !string.IsNullOrWhiteSpace(i))12 .OverrIDename(student name13 .OverrIDeError(no name);14 });15 var v = builder.Build();16 17 var student = new Student() { Age = 13,name = v };18 var context = ValIDation.CreateContext(student);19 var result = v.ValIDate(context);20 Assert.IsNotNull(result);21 Assert.True(result.IsValID);22 Assert.True(result.Failures.Count == 023 24 student = 23,name = .Empty };25 context =26 result =27 28 Assert.False(result.IsValID);29 Assert.True(result.Failures.Count == 130 Assert.AreEqual(].Value);31 Assert.AreEqual(].name);32 Assert.AreEqual(0].Error);
总结
以上是内存溢出为你收集整理的望大神批评教育国庆无聊之作:ObjectValidator全部内容,希望文章能够帮你解决望大神批评教育国庆无聊之作:ObjectValidator所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)