创建项目什么的就不说了吧 直接进入正题吧 我这里建的是个webapi

添加资源文件

1.首先我们创建一个Language文件夹,这就是我们在后面Startup类中需要配置的目录名。

2.然后我们在Language文件夹中添加一个资源文件,并命名为Controllers.EnController.zh-CN。

3.在这个资源文件中,添加一个字段“Hello world.”, 并设置其值为“你好世界。”。

我这里还添加了几个别的语言 如图

配置Startup类

ASP.NET Core中,如果希望启动本地化,首先需要在Startup类的ConfigureServices方法中使用services.AddLocalization添加本地化服务。

在这个方法中,我们指定了前面创建的文件夹Language作为存放翻译文件的目录。 如果不指定的话会从根目录读

services.AddLocalization(o => { o.ResourcesPath = "Language"; }); services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);

然后我们需要在Configure方法中添加本地化中间件。

IList<CultureInfo> supportedCultures = new List<CultureInfo> { new CultureInfo("zh-CN"), new CultureInfo("en-US"), new CultureInfo("ja"), new CultureInfo("is") }; app.UseRequestLocalization(new RequestLocalizationOptions { //这里指定默认语言包 DefaultRequestCulture = new RequestCulture("zh-CN"), SupportedCultures = supportedCultures, SupportedUICultures = supportedCultures }); if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); }

建一个控制器来做基类控制器 引入本地化字符串访问器

public readonly IStringLocalizer<EnController> _localizer; public EnController(IStringLocalizer<EnController> localizer) { _localizer = localizer; }

新建一个控制器 继承基类 方法引用多语言配置项

private Microsoft.Extensions.Logging.ILogger logger; public ValuesController(ILogger<ValuesController> _logger, IStringLocalizer<EnController> localizer):base(localizer) { logger = _logger; } [HttpGet] [Route("Hello")] public string Hello() { return _localizer["Hello world."]; }



然后就没有然后了 直接访问就好了 就可以看到结果了

中文



冰岛语



日语

具体的几种访问方式我就不异议去说了 百度随便搜一下都有

项目放在百度云上了 需要看的话直接下载也行超简单的 https://pan.baidu.com/s/1EraOwPZagEDtMxPw2VN7JA 提取码 r7m3

最新文章

  1. Connect() 2016 大会的主题 ---微软大法好
  2. 微信网页授权(OAuth2.0) PHP 源码简单实现
  3. perl检查变量是否定义
  4. 图解CSS的padding,margin,border属性
  5. MyBatis学习笔记(四) 注解
  6. hadoop拾遗(二)---- 文件模式
  7. cf293E Close Vertices(树分治+BIT)
  8. 《A First Course in Probability》-chaper1-组合分析-方程整数解的个数
  9. 解除被DenyHosts锁定的IP地址
  10. 用python来更改小伙伴的windows开机密码,不给10块不给开机
  11. Akka实践一些总结
  12. XP Sp3 开机就要激活,否则无法登录windows桌面
  13. 网站流量统计PV&amp;UV
  14. 解决Gerrit的git unpack error问题
  15. Linux 虚拟机安装vmware tools
  16. java基础17 模板模式
  17. 12 打印1到最大的n位数
  18. RDD的源码
  19. Less、Sass/Scss
  20. protobuf 中的嵌套消息的使用 主要对set_allocated_和mutable_的使用

热门文章

  1. 【Spring】Spring的数据库开发 - 2、Spring JdbcTemplate的常用方法(execute、update、query)
  2. web测试误区:浏览器后退键退出系统会话失效
  3. 攻防世界—pwn—hello_pwn
  4. CTFshow-萌新赛web_假赛生
  5. 利用iptables防火墙保护web服务器
  6. Ice系列--基于IceGrid的部署方案
  7. 转 Jmeter测试实践:文件上传接口
  8. kvm虚拟机管理(创建、连接)
  9. Google performance Tools (gperftools) 使用心得
  10. loj10010糖果传递