SO中文参考
首页
(current)
程序语言
c
java
python
c++
go
javascript
swift
c#
操作系统
linux
ubuntu
centos
unix
数据库
oracle
mysql
mongodb
postgresql
框架
node.js
angular
react-native
avalon
django
twisted
hadoop
.net
移动开发
android
ios
搜索
ASP.NET Core 本地化在 _Layout head 中不起作用。 这是一个(简化的)重现: @注入IHtmlLocalizer<SharedResources></desc> <question vote="1"> <p>我的 MVC 项目中有一个 <pre><code>_Layout.cshtml</code></pre>,我想通过 ASP.NET Core 本地化设置页面 <pre><code><title></code></pre>。 </p> <p>这是(简化的)重现:</p> <pre><code>@inject IHtmlLocalizer<SharedResources> SharedLocalizer; <!DOCTYPE html> <html> <head> <title>@SharedLocalizer["My Default Language Text"]</title> </head> <body> @SharedLocalizer["My Default Language Text"] @RenderBody() </body> </html> </code></pre> <p><pre><code>body</code></pre>中的资源已正确本地化,并按预期呈现资源文件中的文本。但无论我尝试什么,<pre><code>head</code></pre>中的资源都不是,并且仍然是“我的默认语言文本”。</p> <p>请注意,我在这两种情况下都看到了这种行为:</p> <ol> <li>通过 <pre><code>@inject IHtmlLocalizer<SharedResources> SharedLocalizer</code></pre> 使用共享资源(如上面的代码)</li> <li>或者当我通过 <pre><code>IViewLocalizer</code></pre><pre> 使用 </pre><code>@inject Microsoft.AspNetCore.Mvc.Localization.IViewLocalizer Localizer</code></li> 时 </ol> <p>我正在运行 <pre><code>v1.1.3</code></pre> 包中的 <pre><code>Microsoft.AspNetCore.*</code></pre>。</p> </question> <answer tick="true" vote="3"> <p>我刚刚发现我的问题与这个错误有关:<a href="https://github.com/aspnet/Localization/issues/277" rel="nofollow noreferrer">https://github.com/aspnet/Localization/issues/277</a>(非英语本地化作为默认本地化)。</p> </answer> <answer tick="false" vote="0"> <p>我在 .net core 5 上使用 IStringLocalizer 时遇到了这个问题。 就我而言,问题发生的原因如下:</p> <p>当我在 Startup.cs 上使用 <em>LanguageViewLocationExpanderFormat.Suffix</em> 配置时:</p> <pre><code>services.AddLocalization(o => { o.ResourcesPath = "Resources"; }); services.AddControllersWithViews() .AddViewLocalization(LanguageViewLocationExpanderFormat.Suffix) .AddDataAnnotationsLocalization(); </code></pre> <p>我的资源文件夹就像:</p> <p>资源></p> <ul> <li>Views.Home.Index.en-US.resx</li> <li>Views.Home.Index.pt-BR.resx</li> <li>...</li> </ul> <p>由于上述配置,我的 _layout.cshtml 没有注入任何资源。</p> <p>要解决这个问题,我们有两个选择:</p> <p><strong>第一个选项:</strong></p> <p>为您的 _layout.cstml 创建特定的 resx 文件,例如“<em>Views.Shared._Layout.en-US.resx</em>”,并使用以下命令注入您的布局视图:</p> <pre><code>@using Microsoft.AspNetCore.Mvc.Localization; @inject IViewLocalizer Localizer </code></pre> <p><strong>第二个选项:</strong></p> <p>为您的应用程序/上下文创建通用 resx 文件,例如“Resources”文件夹中的“<em>Controllers.HomeController.en-US.resx</em>”,并注入指定控制器的两个(或多个)视图:</p> <pre><code>@using Microsoft.AspNetCore.Mvc.Localization; @using Yourproject.Controllers; @inject Microsoft.Extensions.Localization.IStringLocalizer<HomeController> Localizer </code></pre> </answer> </body></html>
问题描述
投票:0
回答:0
asp.net-core
最新问题
如何使 html 元素可拖动而不触发其 onClick?
VBA 用户窗体列表框 - 运行时错误 380。无法设置列表属性。无效的属性值
为什么有些字符不允许作为 CSS 选择器?
XML 序列化和空集合
类型“未定义”不可分配给类型“ApexAxisChartSeries |” ApexNonAxisChartSeries'
Laravel:如何获取总帖子的评论总数
布局文件默认背景色为黑色
如何在 cucumber-jvm 运行的 junit 报告中添加自定义文本
如何外部调用ABAQUS cae并自动化计算
C# Json反序列化动态自动化测试数据
Android 从远程文件加载字符串
如何使用 gekko 优化列表切片的索引
ffmpeg 合并来自 ytdl-core 的音频和视频,无时间输出 mp4(不可查找)
如何同时编辑单词的所有突出显示实例?
调用具有依赖注入的实例方法,而不调用 DI 构造函数
Angular - 编辑网格中的文本框以更新行值
弹性最大分片开启最佳实践
在编译时或运行时检查linux版本
VBA 过滤数据透视表,其中包含命名范围中的通配符数组
Android POI:使用 autoSizeColumn() 时崩溃
© www.soinside.com 2019 - 2024. All rights reserved.