asp.net-core – ASP.NET核心DisplayAttribute本地化

前端之家收集整理的这篇文章主要介绍了asp.net-core – ASP.NET核心DisplayAttribute本地化前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
根据 documentation

The runtime doesn’t look up localized strings for non-validation attributes. In the code above,“Email” (from [Display(Name = “Email”)]) will not be localized.

我正在寻找一种在DisplayAttribute中本地化文本的方法.有任何建议以适当的方式做到吗?

解决方法

您可以在DisplayAttribute上设置ResourceType,它可用于本地化您的文本.

将资源.resx文件添加到项目中,例如MyResources.resx,并为您的字段添加资源:

然后在DisplayAttribute中引用字段名称和MyResources类型

[Display(Name = "RememberMe",ResourceType  = typeof(MyResources))]
public bool RememberMe { get; set; }

本地化资源将自动拉出(参见文本框)

注意:RC2中当前存在一个错误,如果在资源值中使用非拉丁字符,则会抛出NotImplementedException:https://github.com/aspnet/Razor/issues/760

猜你在找的asp.Net相关文章