asp.net-mvc – ASP.NET MVC可配置验证
发布时间:2020-12-16 06:46:38 所属栏目:asp.Net 来源:网络整理
导读:我想使用来自可配置源的asp.net mvc客户端/服务器验证. 有些像.config文件,我可以放置信息: 类型,成员,ValidationType validations add type="Customer" member="Name" validator="Required" / add type="Customer" member="Age" validator="Range" mimimum
我想使用来自可配置源的asp.net mvc客户端/服务器验证.
有些像.config文件,我可以放置信息: <validations> <add type="Customer" member="Name" validator="Required" /> <add type="Customer" member="Age" validator="Range" mimimum="18" maximum="100" /> </validations> 通过此计划,可以启用/禁用验证. 任何的想法? 解决方法
如果需要,请考虑一些更高级的验证框架,例如Enterprise Library Validation Block.
如果你想自己动手,我建议你像这样从ValidationAttribute创建自定义属性(部分伪代码,我相信你明白了) public class ConfigurableValidationAttribute: ValidationAttribute { public override bool IsValid(object value) { string objectType = value.GetType().FullName; string objectName = GetMyObjectName(value); // interface? reflection? var validationRules = GetValidationRulesFor(objectType,name); // from your configuration foreach (var rule in validationRules) { ValidationAttribute attr = null; switch (rule.ValidatorName) { case "Required": attr = new RequiredAttribute(); case "StringLength": attr = // you get the idea } if (!attr.IsValid(value)) return false; } return true; } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- ASP.NET MVC – 使用模型中的布尔值禁用Html帮助器控件
- asp.net-mvc – 如何直接将ASP.NET MVC1升级到MVC3?
- asp.net – ASPX需要一个免费的datepicker
- ASP.NET – 将网站投入生产的基本清单
- asp.net-mvc-3 – 请参阅控制器中的验证摘要
- asp.net-mvc – 在MVC2中使用FormsAuthenticationTicket co
- asp.net-mvc – 如何在Razor帮助器中使用UrlHelper?
- 哪些ASP.NET生命周期事件在HttpApplication.Error之后发生?
- ASP.NET Eval时间格式化
- asp.net – 插入后在实体框架中获取记录ID
推荐文章
站长推荐
- asp.net – 如何在网站项目中使用发布配置文件(.
- asp.net-mvc – Azure和MVC2 Web角色模板
- asp.net-mvc – 为缺少的ASP.Net MVC控制器更正4
- dependency-injection – 如何使用unity注入Appl
- asp.net – 不允许使用用于访问路径’/test.html
- asp.net-mvc – 什么CAPTCHA系统与ASP.NET MVC兼
- asp.net-mvc – MVC组件GUI方法
- asp.net-mvc – 未在ELMAH中记录的错误
- asp.net – 什么Jenkins插件可以用于.NET网站部署
- asp.net-mvc – ASP.Net MVC SQLExpress生产环境
热点阅读