使用本地化字符串进行验证

时间:2011-09-12 15:56:49

标签: c# asp.net-mvc-3 localization

我正在尝试在ASP MVC3模型类中本地化验证消息。

[RegularExpression(@"^\d*$", ErrorMessage = "Has to be numeric.")]
public Int32? X{ get; set; }

我们必须使用给定资源处理程序中的方法从数据库中检索本地化字符串,因此不可能使用公共资源文件。

首选方法是什么?

提前致谢!

1 个答案:

答案 0 :(得分:0)

您可以在vaildation属性上设置资源键以及资源类型(RESX)。

Required(ErrorMessageResourceName = "Required", 
           ErrorMessageResourceType = typeof(Resources.Validation))]
[DataType(DataType.Text)]
public string Name { get; set; }

请注意,如果您使用自定义资源提供程序,则存在一个限制。不幸的是没有规定插入这个。我想出了这个here的解决方案,但是如果你使用标准的RESX方法那么就没有必要了。