首页 新闻 赞助 找找看

MVC校验为什么无效

0
悬赏园豆:10 [已解决问题] 解决于 2013-07-11 11:15
 public class UserValidata
    {
        [Required(ErrorMessage = "用户名不能为空!")]
        [StringLength(6, ErrorMessage = "长度不能少与6位")]//长度校验
        public string Name { get; set; }

        //邮箱验证
        [Required(ErrorMessage = "邮箱不能为空!")]
        [MyValidataAttribute(ErrorMessage = "邮箱格式不正确")]
        public string Mail { get; set; }

    }

    //使两个类相关联
    //将UserValidata作为 Users类的元数据描述对象()MetadataType,与view的交互仍是由Users进行
    [MetadataType(typeof(UserValidata))]
    public partial class Users//部分类
    {

    }

邮箱和长度校验都无效,

Required校验正常
辉云的主页 辉云 | 初学一级 | 园豆:190
提问于:2013-07-10 19:00
< >
分享
最佳答案
0

StringLength(6, ErrorMessage = "长度不能少与6位") 这里的6是最长,如果你要不小于6位,应该是这样的:StringLength(120, ErrorMessage = "长度不能少与6位", MinimumLength = 6)

 MyValidataAttribute(ErrorMessage = "邮箱格式不正确")这个应该是你自定义特性了,要看看自定义特性的定义方式。我一般用邮箱的验证都是这样个特性[RegularExpression(@"^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$", ErrorMessage = "则邮件地址不合法。")]

收获园豆:10
kylin.chen | 小虾三级 |园豆:983 | 2013-07-10 19:29

谢谢,邮箱校验无效是因为没有添加注册

辉云 | 园豆:190 (初学一级) | 2013-07-11 11:17
其他回答(2)
0

你页面上添加验证了吗?

@Html.TextBoxFor(x => x.Name)
@Html.ValidationMessageFor(x => x.Name)
淘@淘 | 园豆:602 (小虾三级) | 2013-07-11 09:12
0
已经解决了
[StringLength(
6, ErrorMessage = "长度不能少与6位")]//长度校验 是参数错了

[MyValidataAttribute(ErrorMessage = "邮箱格式不正确")]  自定义的特性,没有在global中添加注册
 
辉云 | 园豆:190 (初学一级) | 2013-07-11 11:14
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册