Silverlight 4:内置数据注释验证异常的本地化

Silverlight 4:内置数据注释验证异常的本地化,第1张

概述我想在我的Silverlight应用程序中使用数据注释来处理验证.内置的验证属性(主要是StringLength和Required)非常棒,让生活变得非常简单.然而,他们似乎有一个严重的缺陷.例如,如果我的语言环境设置为fr-CA,则验证例外仍为英语 – “名称字段是必需的”,“字段名称必须是最大长度为20的字符串”等. 这是一个主要问题.这意味着如果我想要内置验证属性的本地化错误消息,我必须手动 @H_404_1@ 我想在我的Silverlight应用程序中使用数据注释来处理验证.内置的验证属性(主要是StringLength和required)非常棒,让生活变得非常简单.然而,他们似乎有一个严重的缺陷.例如,如果我的语言环境设置为fr-CA,则验证例外仍为英语 – “名称字段是必需的”,“字段名称必须是最大长度为20的字符串”等.

这是一个主要问题.这意味着如果我想要内置验证属性的本地化错误消息,我必须手动将ErrorMessage / ErrorMessageResourceType添加到业务层中每个valIDatable属性的每个验证属性,并为每个错误消息手动添加已翻译的字符串.

所以……我在这里错过了一些东西吗?有没有办法自动将内置验证属性本地化?还是其他一些更简单的方法呢?或者我完全没有运气,并坚持手动路线?

任何意见或想法将不胜感激.

解决方法 好吧,我通过简单地继承内置验证属性来解决这个问题.问题解决了!

internal class LocalizedStringLengthAttribute : StringLengthAttribute{    public LocalizedStringLengthAttribute(int maximumLength)        : base(maximumLength)    {    }    public overrIDe string FormatErrorMessage(string name)    {        return String.Format(CultureInfo.CurrentUICulture,LanguageResources.Resource.Error_StringLength,name,MaximumLength);    }}
总结

以上是内存溢出为你收集整理的Silverlight 4:内置数据注释验证异常的本地化全部内容,希望文章能够帮你解决Silverlight 4:内置数据注释验证异常的本地化所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/web/1005448.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存