MVC 4 - 模型中的多显示名称

时间:2017-05-23 20:33:54

标签: c# asp.net-mvc resx displayname-attribute label-for

HY, 我有一个问题,我正在为多个企业编制一个网站。我使用DisplayName和LabelFor。每个业务的站点类似,只有LabelFor名称更改。我发现了很多使用资源文件(resx)和文化的多语言可能性。但我不想使用它,因为它不是文化“问题”。 所以问题是......

  1. 我可以在不使用文化的情况下使用resx文件吗?也许控制一些其他全局参数
  2. 我可以使用“Stringkey”和业务“id”从数据库中获取字符串(例如:Search.Label.Firstname,
  3. 还有其他可行性/想法吗?
  4. 很多 克里斯

1 个答案:

答案 0 :(得分:1)

以下是几个选项:

  1. 创建custom HTML helper(可能只是LabelFor的重载)以从基于客户端的资源文件中提取标签。在应用业务后为每个资源文件命名。您可以从HTML帮助程序轻松读取某些全局状态。您还可以选择本地化每个业务的标签。
  2. 不要使用LabelFor,而是将标签文本作为视图模型的一部分。然后,您将有许多选项可以从中检索它。
  3. public class MyModel
    {
        public string NameLabel { get; set; }
        public string Name { get; set; }
    }