首先在 Startup 的 ConfigureServices 中添加 AddLocalization 与 AddViewLocalization 以及配置 RequestLocalizationOptions (这里假设使用英文与中文):
public void ConfigureServices(IServiceCollection services)
{
services.AddLocalization(options => options.ResourcesPath = "Resources");
services.AddMvc()
.AddViewLocalization(LanguageViewLocationExpanderFormat.Suffix);
services.Configure<RequestLocalizationOptions>(
opts =>
{
var supportedCultures = new List<CultureInfo>
{
new CultureInfo("en-US"),
new CultureInfo("zh-CN")
};
opts.SupportedCultures = supportedCultures;
opts.SupportedUICultures = supportedCultures;
});
}
在 Startup 的 Configure() 方法中应用 RequestLocalizationOptions :
var requestLocalizationOptions = app.ApplicationServices.GetService<IOptions<RequestLocalizationOptions>>().Value; app.UseRequestLocalization(requestLocalizationOptions);
然后在 _Layout.cshtml 视图中通过 IViewLocalizer 接口以多语言的方式显示页面标题的后缀:
@using Microsoft.AspNetCore.Mvc.Localization @inject IViewLocalizer Localizer <!DOCTYPE html> <html> <head> <title>@ViewData["Title"] - @Localizer["SiteTitle"]</title> </head> <body> </body> </html>
接着在 ASP.NET Core Web 项目中创建 Resources 文件夹,在其中分别添加 Views.Shared._Layout.en-Us.resx 与 Views.Shared._Layout.zh-CN.resx 文件, Views.Shared._Layout.resx 文件,并添加 "SiteTitle" 所对应的语句文字:
1)Views.Shared._Layout.en-Us.resx
2)Views.Shared._Layout.zh-CN.resx
这时运行 ASP.NET Core 站点,就会根据浏览器的语言设置(Accept-Language header)、或者 culture 查询参数、或者 .AspNetCore.Culture Cookie 值显示对应语言的文字:
需要注意的地方:千万不要添加不带语言名称的 Views.Shared._Layout.en-Us.resx ,不然添加代码语言名称的 .resx 文件时会遇到 "Custom tool ResXFileCodeGenerator failed to produce an output for input file ... but did not log a specific error." 问。
一定要看的参考文档:Globalization and localization
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# asp.net
# core
# 多语言
# Asp.Net Core MVC项目实现多语言实例(Globalization/Localizati
# ASP.NET Core MVC 中实现中英文切换的示例代码
# 就会
# 英文
# 千万不要
# 不带
# 需要注意
# 大家多多
# 一定要看
# 所对应
# 文档
# zh
# en
# SupportedCultures
# CN
# var
# opts
相关文章:
安云自助建站系统如何快速提升SEO排名?
实惠建站价格推荐:2025年高性价比自助建站套餐解析
建站主机无法访问?如何排查域名与服务器问题
猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?
如何在建站之星网店版论坛获取技术支持?
孙琪峥织梦建站教程如何优化数据库安全?
如何快速辨别茅台真假?关键步骤解析
网站图片在线制作软件,怎么在图片上做链接?
如何在Tomcat中配置并部署网站项目?
学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?
如何高效配置IIS服务器搭建网站?
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
招贴海报怎么做,什么是海报招贴?
网站制作难吗安全吗,做一个网站需要多久时间?
建站主机如何选?性能与价格怎样平衡?
如何在宝塔面板创建新站点?
宝塔建站助手安装配置与建站模板使用全流程解析
C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)
如何通过远程VPS快速搭建个人网站?
官网自助建站系统:SEO优化+多语言支持,快速搭建专业网站
Bpmn 2.0的XML文件怎么画流程图
C++如何将C风格字符串(char*)转换为std::string?(代码示例)
广东专业制作网站有哪些,广东省能源集团有限公司官网?
宝华建站服务条款解析:五站合一功能与SEO优化设置指南
无锡营销型网站制作公司,无锡网选车牌流程?
如何在阿里云域名上完成建站全流程?
如何快速查询域名建站关键信息?
建站之星各版本价格是多少?
详解jQuery停止动画——stop()方法的使用
建站IDE高效指南:快速搭建+SEO优化+自适应模板全解析
如何选择域名并搭建高效网站?
如何在阿里云高效完成企业建站全流程?
胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?
如何通过IIS搭建网站并配置访问权限?
网站制作的方法有哪些,如何将自己制作的网站发布到网上?
Swift中switch语句区间和元组模式匹配
,石家庄四十八中学官网?
家庭服务器如何搭建个人网站?
如何在IIS中新建站点并解决端口绑定冲突?
标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?
家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?
弹幕视频网站制作教程下载,弹幕视频网站是什么意思?
全景视频制作网站有哪些,全景图怎么做成网页?
如何在企业微信快速生成手机电脑官网?
香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧
免费视频制作网站,更新又快又好的免费电影网站?
C#如何使用XPathNavigator高效查询XML
如何选择网络建站服务器?高效建站必看指南
建站之星云端配置指南:模板选择与SEO优化一键生成
网站网页制作专业公司,怎样制作自己的网页?
*请认真填写需求信息,我们会在24小时内与您取得联系。