我正在尝试本地化数据注释属性的错误消息。我创建了两个 resx 文件:
DataAnnotationsLocalization.resx
> DataAnnotationsLocalization.Designer.cs
DataAnnotationsLocalization.uk.resx
我正在
AddDataAnnotationsLocalization
中调用 Program.cs
,现在尝试在我的页面模型中使用它:
[MinLength(10, ErrorMessage = "LocationAddressFormatError")]
public string Address { get; set; }
但因此,我只看到我的英语资源,而对于其他本地化字符串,我根据当前文化看到它们 (
CultureInfo.CurrentUICulture
)。
我已将断点放入
Designer.cs
但它从未被击中。好像框架直接去DataAnnotationsLocalization.resx
,不考虑其他语言版本。
如何显示适合当前文化的语言版本?
您应该将 .resx 设为公开
https://i.imgur.com/zrGqYk4.png
并像这样使用你的资源
[MinLength(10, ErrorMessageResourceName = "LocationAddressFormatError", ErrorMessageResourceType = typeof(DataAnnotationsLocalization)]
public string Address { get; set; }