MVC3如何自定义注解验证字符长度
发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,这篇文章主要介绍MVC3如何自定义注解验证字符长度,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!自定义注解(验证字符长度)需要继承ValidationAttribute类,它是
千家信息网最后更新 2025年01月19日MVC3如何自定义注解验证字符长度
这篇文章主要介绍MVC3如何自定义注解验证字符长度,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
自定义注解(验证字符长度)
需要继承ValidationAttribute类,它是一个抽象类。
需要引用命名空间:
using System.ComponentModel.DataAnnotations;
----------新建一个类(MaxWordsAttribute.cs)
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.ComponentModel.DataAnnotations;namespace SchoolManageDomw.Models{ public class MaxWordsAttribute:ValidationAttribute { private readonly int _maxwords; //base("{0}字符过长"):向基类的构造函数添加一个默认的错误提示信息 public MaxWordsAttribute(int maxWords):base("{0}字符过长") { _maxwords = maxWords; } ////// /// /// 要验证对象的值 /// 描述执行验证检查的上下文 ///protected override ValidationResult IsValid(object value, ValidationContext validationContext) { if (value != null) { if (value.ToString().Length > _maxwords) { //validationContext.DisplayName:字段的名称 //FormatErrorMessage:错误消息 var msg = FormatErrorMessage(validationContext.DisplayName); return new ValidationResult(ErrorMessage); } } return ValidationResult.Success; } }}
----------给模型添加数据注解
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Data.Entity;using System.ComponentModel;using System.ComponentModel.DataAnnotations;using System.Web.Mvc;namespace SchoolManageDomw.Models{ public class SchoolType:IValidatableObject { [Key] public virtual int st_id { get; set; } [MaxWords(10,ErrorMessage="字符过长")] public virtual string st_name { get; set; } public virtual ListSchools { get; set; } }}
=============================================子验证模型
是要继承接口:IValidatableObject
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Data.Entity;using System.ComponentModel;using System.ComponentModel.DataAnnotations;using System.Web.Mvc;namespace SchoolManageDomw.Models{ public class SchoolType:IValidatableObject { [Key] public virtual int st_id { get; set; } [Required] //不许为空 [Display(Name = "名称")] public virtual string st_name { get; set; } public virtual ListSchools { get; set; } #region IValidatableObject 成员 public IEnumerable Validate(ValidationContext validationContext) { if (st_nameConfirm.Length > 3) { yield return new ValidationResult("字符过长", new[] {"st_name" }); } } #endregion }}
以上是"MVC3如何自定义注解验证字符长度"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
字符
验证
注解
长度
内容
名称
模型
篇文章
错误
上下
上下文
价值
信息
兴趣
函数
字段
对象
小伙
小伙伴
成员
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
洛阳吉利区软件开发
周口网络安全工程师入门
读出sql后几个数据库
hr系统用什么数据库
石鼓租房软件开发
政治安全网络安全
网络安全法于何时颁布
国外互联网物流黑科技
PC服务器又叫网络服务器吗
重庆服务器代理商
赣州软件开发工程师
计算机三级考试网络技术例题
微信服务器可以看到删除的信息吗
云服务器装什么安全软件
埃尔登法环服务器断开
如何加强网络安全与治理思修
文山软件开发专业好吗
系统软件开发设计约束
软件开发项目工作周报
儿童网络安全绘画一等奖
联通卡的服务器设置多少好
周口网络安全工程师入门
银行复杂数据库
数据库 脱库
网络安全可以用u盘
数据库开发是做什么的
数据库软件占用空间太大
工业软件开发需求书
项目设计软件开发是做什么的
微软云服务器怎么用