今天天气不错,园子大丰收~~:

asp.net mvc 本地化 默认的错误提示

System.ComponentModel.DataAnnotations 给我们提供了一些特性来直接对model的属性进行验证和约束, 同时也提供了 ErrorMessageResourceName 和 ErrorMessageResourceType来本地化一些错误信息。但并不是所以的错误信息都能本地化的。例如: 判断是否数字的信息一直是“the field {0} must be a number”. 

这里对asp.net MVC 提供了一个简单的本地化的方法。

1 首先添加一个资源文件(假定命名: CH_ZNErrorResources.resx)到App_GlobalResources文件夹。(App_GlobalResources文件夹是项目自带的,一般情况不可见,你需要点击项目右键,添加asp。net folder--》App_GlobalResources来使其可见)。然后可以添加一条资源: Name: FieldMustBeNumeric, value: {0}必须是数字。保存。

2. 在Global.asax文件里的Application_Start下加入如下代码:

1
2
ClientDataTypeModelValidatorProvider.ResourceClassKey = "CH_ZNErrorResources";
DefaultModelBinder.ResourceClassKey = "CH_ZNErrorResources";

然后就没有然后了, 运行程序试试吧。

感谢Imran Baloch大师的分享,解决我的燃眉之急。原文地址:(asp.net 的可在原文中找)

http://weblogs.asp.net/imranbaloch/archive/2013/03/31/localizing-default-error-messages-in-asp-net-mvc-and-web-form.aspx

posted @   Jimson.Ma  阅读(746)  评论(0编辑  收藏  举报
编辑推荐:
· 大模型 Token 究竟是啥:图解大模型Token
· 35岁程序员的中年求职记:四次碰壁后的深度反思
· 继承的思维:从思维模式到架构设计的深度解析
· 如何在 .NET 中 使用 ANTLR4
· 后端思维之高并发处理方案
阅读排行:
· BotSharp + MCP 三步实现智能体开发
· BotSharp 5.0 MCP:迈向更开放的AI Agent框架
· 5. RabbitMQ 消息队列中 Exchanges(交换机) 的详细说明
· 【ESP32】两种模拟 USB 鼠标的方法
· 设计模式脉络

Email: 20045912@163.com MSN: 20045912@163.com

点击右上角即可分享
微信分享提示