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'.” 来实现多语言的?
试试自己实现 IValidationMetadataProvider
,参考 Customization And Localization Of ASP.NET Core MVC Default Validation Error Messages
超赞!
你想在一个地方统一将中文翻译为英文?
– dudu 5年前@dudu: 现在默认显示的是英文错误信息,想统一翻译为中文。确切的说是根据app.UseRequestLocalization() 里的设置显示指定的语言的错误信息。
– 大豆男生 5年前