MVC-DbFirst如何进行模型级验证

//------------------------------------------------------------------------------
// <auto-generated>
//     此代码已从模板生成。
//
//     手动更改此文件可能导致应用程序出现意外的行为。
//     如果重新生成代码,将覆盖对此文件的手动更改。
// </auto-generated>
//------------------------------------------------------------------------------

namespace MvcTest1.Entity
{
    using System;
    using System.Collections.Generic;
    
    public partial class UserInfo
    {
        public int ID { get; set; }
        public string UserName { get; set; }
        public string UserPass { get; set; }
        public System.DateTime RegTime { get; set; }
        public string Email { get; set; }
    }
}

/************************************************************************************************/

在同样的命名空间创建新类UserInfoValidate,将UserInfo里面的所有属性拷贝到该类中,增加验证信息,

然后再创建一个UserInfo部分类,并增加 [MetadataType(typeof(UserInfoValidate))]和UserInfoValidate关联

/************************************************************************************************/

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;

namespace MvcTest1.Entity
{
    public class UserInfoValidate
    {
        public int ID { get; set; }

        [Required(ErrorMessage = "用户名不能为空")]
        public string UserName { get; set; }

        [Required(ErrorMessage = "密码不能为空")]
        public string UserPass { get; set; }
        public System.DateTime RegTime { get; set; }


        [Required(ErrorMessage = "邮箱不能为空")]
        [RegularExpression(@"^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$")]
        public string Email { get; set; }
    }

    [MetadataType(typeof(UserInfoValidate))]
    public partial class UserInfo
    {

    }
}

展开阅读全文

没有更多推荐了,返回首页