c# – 无阻碍客户端验证错误

前端之家收集整理的这篇文章主要介绍了c# – 无阻碍客户端验证错误前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用asp.net mvc 3,我一直收到以下错误.

Validation type names in unobtrusive
client validation rules must be
unique. The following validation type
was seen more than once: number

我不知道我有这个

@Html.TextBoxFor(x => x.Mark)

//我的viewmodel

[required(ErrorMessage = "Message")]
        [Number(ErrorMessage = "Message")]
        public decimal Mark { get; set; }

如果我将它从小数改为字符串,它将不会抱怨.到底是怎么回事?

编辑

我认为这是因为[Number(ErrorMessage =“Message”)]注释.我正在使用这个库 Data annotation extensions

似乎并不是说我使用小数.谁知道为什么?

解决方法

如果您使用的是十进制类型,则不需要使用[Numeric]属性,因为MVC已经看到您正在使用数字类型并为您注入(导致错误).当您更改为字符串时,需要[数字]来告知验证您希望该字符串如何工作.

在DataAnnotationsExtensions的下一个版本中,我将更改[Numeric]属性,以便在这种情况下它不会与MVC版本冲突.但是现在,删除[Numeric]属性就好了,因为数字类型的[Numeric]无论如何都是多余的.

猜你在找的C#相关文章