当前位置:  开发笔记 > 编程语言 > 正文

Asp.net核心区域本地化

如何解决《Asp.net核心区域本地化》经验,为你挑选了1个好方法。

大家好,我参与了一个本地化项目。我们正在与地区合作,我们需要为支持的语言创建资源文件。默认结构(Resources / Controllers / controllername.culture.resx)可以像Microsoft docs一样正常工作。我们想知道其余区域的目录结构。我们已经寻找了一些文档,但没有找到。致敬



1> kdaveid..:

C#对象(而非视图)的资源文件由namespace它们所在的文件解析。它们ResourcePath在MVC本地化初始化期间与集合相对。

假设您已将中的设置ResourcesPath为“资源”

services.AddLocalization(s => s.ResourcesPath = "Resources");

并且您有一个这样的HomeController 无区域

namespace WebApp.Controllers
{
   public class HomeController : Controller
   {
     ...
   }
}

那么您文件夹中的资源文件Resources>Controllers>HomeController.{culture}.resx将被提取。

如果某个区域中有控制器,则您可以更改为其他名称空间,如下所示:

namespace WebApp.Admin.Controllers
{
   [Area("admin")]
   public class HomeController : Controller
   {
     ...
   }
}

注意,这是HomeController管理区域的。

在这种情况下,该特定控制器的资源文件可以位于以下文件夹中:

Resources>Admin>Controllers>HomeController.{culture}.resx

可以这样命名:
Admin.Controllers.HomeController.{culture}.resx

这在ASP.NET Core 1.1.0中有效。我已经用区域更新了AspNetCore.Identity.Localization项目。

推荐阅读
ar_wen2402851455
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有