我怎样才能改变这种状况的所有邮件int
,使与其说字段:
The field must be a number
在英语中,它表明:
El campo tiene que ser numerico
在西班牙语。
是否有办法?
我怎样才能改变这种状况的所有邮件int
,使与其说字段:
The field must be a number
在英语中,它表明:
El campo tiene que ser numerico
在西班牙语。
是否有办法?
如果你碰巧使用ASP.NET MVC 4起,检查这篇文章:
在ASP.NET MVC和WebForms的本地化默认错误消息
基本上,你必须添加下面的代码在你Application_Start()
的方法Global.asax
:
ClientDataTypeModelValidatorProvider.ResourceClassKey = "Messages";
DefaultModelBinder.ResourceClassKey = "Messages";
右键单击Solution Explorer中的ASP.NET MVC项目在Visual Studio中,选择Add => Add ASP.NET Folder => App_GlobalResources
。
现在添加.resx
这个文件夹里面所谓的文件Messages.resx
。
最后,在添加下面的字符串资源.resx
文件:
Name Value
==== =====
FieldMustBeDate The field {0} must be a date.
FieldMustBeNumeric The field {0} must be a number.
PropertyValueInvalid The value '{0}' is not valid for {1}.
PropertyValueRequired A value is required.
你应该是好去。
请注意,您所感兴趣的值是FieldMustBeNumeric
。 它定位于西班牙语 ,你必须添加另一个名为资源文件Messages.es.resx
。 在这个特定.resx
文件,替换资源的价值:
Name Value
==== =====
FieldMustBeNumeric El campo {0} tiene que ser numerico.
如果你碰巧使用ASP.NET MVC 3下,该解决方案可以帮助你达到同样的效果: https://stackoverflow.com/a/2551481/114029
您可以设置自定义消息为您的验证。
[RegularExpression("\d{9}",ErrorMessage="El campo tiene que ser numerico")]
public decimal UnitPrice { get; set; }
如果要指定自定义消息对于每个整数,双和浮动。 您可以使用范围与字符串属性如下。
[Required(ErrorMessageResourceType = typeof(Global), ErrorMessageResourceName = "YearOfEstablishmentRequired")]
[Range(0, int.MaxValue, ErrorMessageResourceType = typeof(Global), ErrorMessageResourceName = "ValidYearOfEstablishment")]
[Display(Name = "Year Of Establishment")]
public string YearOfEstablishment { get; set; }
现在,作为上面可以为每个属性格式指定自定义消息。