如何将文化应用于属性级别,如MVC中的数据注释,而不是全局级别

本文关键字:注释 数据 全局 文化 属性 MVC 应用于 | 更新日期: 2023-09-27 18:16:21

我只需要在单个TextBox控件的dataannotation属性中应用文化,而不是整个模型

语言https://msdn.microsoft.com/en-us/library/ee825488 (v = cs.20) . aspx

In MVC5 c#

[System.ComponentModel.DataAnnotations.DisplayFormat(ApplyFormatInEditMode = true,DataFormatString = "ur-PK")]public string test { get; set; }

如何将文化应用于属性级别,如MVC中的数据注释,而不是全局级别

如果您的问题是关于在特定文化中显示字符串并且您不想更改所有内容的语言(只是这个textBox),您可以创建自定义的DataAnnotation,如

public class LocalizedDisplayNameAttribute : DisplayNameAttribute
{
    public LocalizedDisplayNameAttribute(string displayNameKey)
        : base(displayNameKey)
    {
    }
    public override string DisplayName
    {
        get
        {
            // Get your string from db 
            // or load it from specific resource file 
            //(as your business) and return string;
        }
    }
}

但是如果你不需要这些,你可以使用默认的显示并从资源文件

加载你的字符串