【问题标题】:DotNet core data annotation localization returns resource key instead of resource valueDotNet 核心数据注释本地化返回资源键而不是资源值
【发布时间】:2019-10-22 10:50:47
【问题描述】:

我需要在 DotNet 核心中本地化一条数据注释错误消息。我创建了一个 SharedResource 类,但验证摘要返回的是资源的键而不是资源的值。

services.AddRazorPages()
            .AddViewLocalization(LanguageViewLocationExpanderFormat.Suffix)
           .AddDataAnnotationsLocalization(options =>
           {
               options.DataAnnotationLocalizerProvider = (type, factory) =>
                   factory.Create(typeof(SharedResources));
           });

【问题讨论】:

  • 这个问题应该在 Razor 页面部分,而不是在 Blazor 部分。
  • 请帮助我一切工作仅数据注释

标签: c# .net-core razor-pages blazor


【解决方案1】:

在resources文件夹中,需要有SharedResource.en-US.resxSharedResource.fi-FI.resx等SharedResources资源文件。

您可能还需要通过调用设置ResourcesPath

services.AddLocalization(opts => { opts.ResourcesPath = "Resources"; });

services.AddMvc()
    .AddViewLocalization(
        LanguageViewLocationExpanderFormat.Suffix,
        opts => { opts.ResourcesPath = "Resources"; })

还要确保用户的当前文化具有具有适当键值对的资源文件。

Further reference

【讨论】:

  • 感谢您的重播,我做了所有这些更改,只是数据注释不起作用
猜你喜欢
  • 2022-06-11
  • 2019-01-13
  • 2021-09-30
  • 1970-01-01
  • 2012-07-02
  • 2016-02-16
  • 2011-06-14
  • 1970-01-01
  • 2014-11-28
相关资源
最近更新 更多