首页 新闻 会员 周边

ASP.NET Core 的模型验证,如何快速的实现多语言错误信息

0
[已解决问题] 解决于 2019-04-21 12:44

Model:
public class PmTbl
{
[MaxLength(10), Required, Key]
public string Pm { get; set; }

[MaxLength(50), Required]
public string Descr { get; set; };

}

Action:

可以在 Model 里的添加特性的方式实现多语言错误信息,但这样太麻烦,每个字段都要写:
MaxLength(50, ErrorMessageResourceName ="xxx",ErrorMessageResourceType =typeof(T))

有没有地方可以直接翻译“The field Descr must be a string or array type with a maximum length of '50'.” 来实现多语言的?

大豆男生的主页 大豆男生 | 小虾三级 | 园豆:608
提问于:2019-04-18 16:44

你想在一个地方统一将中文翻译为英文?

dudu 5年前

@dudu: 现在默认显示的是英文错误信息,想统一翻译为中文。确切的说是根据app.UseRequestLocalization() 里的设置显示指定的语言的错误信息。

大豆男生 5年前
< >
分享
最佳答案
0

试试自己实现 IValidationMetadataProvider ,参考 Customization And Localization Of ASP.NET Core MVC Default Validation Error Messages

奖励园豆:5
dudu | 高人七级 |园豆:30994 | 2019-04-18 17:35

超赞!

大豆男生 | 园豆:608 (小虾三级) | 2019-04-21 12:44
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册