真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

MVC3如何自定義注解驗(yàn)證字符長(zhǎng)度

這篇文章主要介紹MVC3如何自定義注解驗(yàn)證字符長(zhǎng)度,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

10多年的東鄉(xiāng)網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。網(wǎng)絡(luò)營(yíng)銷推廣的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整東鄉(xiāng)建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)建站從事“東鄉(xiāng)網(wǎng)站設(shè)計(jì)”,“東鄉(xiāng)網(wǎng)站推廣”以來(lái),每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

自定義注解(驗(yàn)證字符長(zhǎng)度)

需要繼承ValidationAttribute類,它是一個(gè)抽象類。

需要引用命名空間:

using System.ComponentModel.DataAnnotations;

----------新建一個(gè)類(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}字符過(guò)長(zhǎng)"):向基類的構(gòu)造函數(shù)添加一個(gè)默認(rèn)的錯(cuò)誤提示信息
        public MaxWordsAttribute(int maxWords):base("{0}字符過(guò)長(zhǎng)")
        {
            _maxwords = maxWords;
        }
        /// 
        /// 
        /// 
        /// 要驗(yàn)證對(duì)象的值
        /// 描述執(zhí)行驗(yàn)證檢查的上下文
        /// 
        protected override ValidationResult IsValid(object value, ValidationContext validationContext)
        {
            if (value != null)
            {
                if (value.ToString().Length > _maxwords)
                {
                    //validationContext.DisplayName:字段的名稱
                    //FormatErrorMessage:錯(cuò)誤消息
                    var msg = FormatErrorMessage(validationContext.DisplayName);
                    return new ValidationResult(ErrorMessage);
                }
            }
            return ValidationResult.Success;
        }

        
    }
}

----------給模型添加數(shù)據(jù)注解

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="字符過(guò)長(zhǎng)")]
        public virtual string st_name { get; set; }

        public virtual List Schools { get; set; }
    }

}

=============================================子驗(yàn)證模型

是要繼承接口: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 List Schools { get; set; }



        #region IValidatableObject 成員

        public IEnumerable Validate(ValidationContext validationContext)
        {
            if (st_nameConfirm.Length > 3)
            {
                yield return new ValidationResult("字符過(guò)長(zhǎng)", new[] {"st_name" });
            }
        }

        #endregion
    }

}

以上是“MVC3如何自定義注解驗(yàn)證字符長(zhǎng)度”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


新聞名稱:MVC3如何自定義注解驗(yàn)證字符長(zhǎng)度
網(wǎng)頁(yè)網(wǎng)址:http://weahome.cn/article/gphjdh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部