公司效益好了,准备和国外做生意,这个时候就需要多语言了。

> 1. 这是一个ASP.NET Core Web多语言项目,主要展示项目的不同:
> 2. 第一种:www.xxx.com/en/index; www.xxx.com/zh/index; ,这种事通过路由来处理的
> 3. 第二种: www.xxx.com/index/en; www.xxx.com/index/zh ,这种可以用cookie保存,通过cookie来判断
> 4. 第三种:www.en.xxx.com; www.zh.xxx.com,这种方案就是发布两个项目,属于比较简单的,有多少种语言就发布多少种,上面的两种发布的是同一个版本的
> 5. 第一种,第三种一般用于两个项目差别比较大的情况,第二种一般用于项目只有内容不同,其他的都相同的情况

创建项目

新建一个ASP.NET Core Web项目,选择Web应用程序(模型视图控制器)

创建controller

创建一个EnController、ZhController、MoreController

using Microsoft.AspNetCore.Mvc;namespace MoreLanguage.Controllers
{public class HomeController : Controller{public IActionResult Index(){return View();}}
}

using Microsoft.AspNetCore.Mvc;namespace MoreLanguage.Controllers
{public class EnController : Controller{public ActionResult Index(){return View();}}
}

using Microsoft.AspNetCore.Mvc;namespace MoreLanguage.Controllers
{public class ZhController : Controller{public ActionResult Index(){return View();}}
}

using Microsoft.AspNetCore.Mvc;namespace MoreLanguage.Controllers
{public class MoreController : Controller{public ActionResult Index(string lang){ViewBag.lang = lang == "en" ? "Hello World!" :lang == "zh" ? "世界,你好!" : $"你的语言我不懂:{lang}";return View();}}
}

创建对应的视图

@{ViewData["Title"] = "Index";
}<h2>Hello World!</h2>

这里不再重复视图代码

修改Route

//Startup.cs文件
app.UseMvc(routes =>
{routes.MapRoute(name: "more_route",template: "More/{action}/{lang}",defaults: new { controller = "More" });routes.MapRoute(name: "default",template: "{controller=Home}/{action=Index}/{id?}");
});

效果

不同的路由查看效果

https://localhost:44318/

https://localhost:44318/En

https://localhost:44318/Zh

https://localhost:44318/More/Index/en

https://localhost:44318/More/Index/zh

git地址

https://github.com/jasonhua95/samll-project/tree/master/MoreLanguage

转载于:https://www.cnblogs.com/zhao123/p/10497044.html

ASP.NET Core Web多语言项目相关推荐

  1. asp.net core web 解决方案多项目模板制作打包总结

    一.文件夹\项目结构 1.1.文件夹 net6.0:针对.net 6.0 项目模板 net6.0pack:针对net6.0打包 1.2.项目结构 Web\WebApi多项目.各层项目.单元测试项目 目 ...

  2. ASP.NET Core Web 支付功能接入 微信-扫码支付篇

    // 随着版本更迭,新版本可能无法完全适用,请参考仓库内的示例. 这篇文章将介绍ASP.NET Core中使用 开源项目 Payment(https://github.com/Essensoft/Pa ...

  3. Asp.Net Core Web应用程序—探索

    前言 作为一个Windows系统下的开发者,我对于Core的使用机会几乎为0,但是考虑到微软的战略规划,我觉得,Core还是有先了解起来的必要. 因为,目前微软已经搞出了两个框架了,一个是Net标准( ...

  4. ASP.NET Core 实战:使用ASP.NET Core Web API 和 Vue.js 搭建前后端分离项目

    一.前言 这几年前端的发展速度就像坐上了火箭,各种的框架一个接一个的出现,需要学习的东西越来越多,分工也越来越细,作为一个 .NET Web 程序猿,多了解了解行业的发展,让自己扩展出新的技能树,对自 ...

  5. ASP.NET Core Web API + Identity Server 4 + Angular 6 实战小项目视频

    今天开始尝试录制ASP.NET Core Web API的教学视频. 这是一个小项目的实战视频, 该项目采用了: ASP.NET Core 2.1 做API Identity Server 4 Ang ...

  6. abp .net core linux,Abp vNext框架 从空项目开始 使用ASP.NET Core Web Application-笔记

    参考 abp vnext框架 从空项目开始 使用asp.net core web application rynowak的回答 migrate from asp.net core 2.2 to 3.0 ...

  7. core webapi缩略图_在ASP.NET Core Web API 项目里无法访问(wwwroot)下的文件

    新建 ASP.NET Core Web API 项目 -- RESTFul 风格 Hello World! 一.创建一个空项目 请查看 新建 .NET Core 项目 -- Hello World!  ...

  8. ASP.NET Core Web项目连接MySQL数据库

    作者在新建了一个ASP.NET Core Web项目的基础上,想连接本地的Mysql数据库,参考了很多博客,各种各样的说法都有,多少让人有感凌乱!自己最后捣鼓成功了!所以写一篇博客,以便后人查阅! 操 ...

  9. 重温.NET下Assembly的加载过程 ASP.NET Core Web API下事件驱动型架构的实现(三):基于RabbitMQ的事件总线...

    重温.NET下Assembly的加载过程 最近在工作中牵涉到了.NET下的一个古老的问题:Assembly的加载过程.虽然网上有很多文章介绍这部分内容,很多文章也是很久以前就已经出现了,但阅读之后发现 ...

最新文章

  1. iOS蓝牙4.0开发例子
  2. 微信支付java helloworld_10行代码搞定微信支付(Java版)
  3. 客户端连接XENAPP 6.5 提示 该地址未配置xenapp服务器
  4. Java 程序执行过程的内存流程图(结合类加载器 ClassLoader 讲解)
  5. 计算机学业水平测试字处理多少分,【计算机应用论文】计算机应用基础学业水平的测试问题(共3624字)...
  6. Windows + Ubuntu下JDK与adb/android环境变量配置完整教程
  7. VIVADO 下载mcs 文件
  8. c语言中文网GUI,golang gui介绍
  9. Recorder︱深度学习小数据集表现、优化(Active Learning)、标注集网络获取
  10. 云盘服务器被毁,360云盘宣布停止个人云盘服务 明年2月1日清空
  11. 日常笔记——Windows删除多余的系统还原点
  12. 封装一个自己的golang操作MySQL数据库工具
  13. Android API 29 百度步行导航语音tts集成
  14. bazel 的安装与卸载
  15. 错误接受率 (FAR), 错误拒绝率(FRR), 等错误率(EER)
  16. 58——FFA-Net: Feature Fusion Attention Network for Single Image Dehazing
  17. SDUT 3929 魔戒
  18. Power BI 可视化:KPI 指标在卡片图中的突出显示
  19. 小小输入法—郑码学习
  20. python爬取知乎文章_Python爬取知乎日报,推送到kindle

热门文章

  1. springmvc返回html页面_深入浅出SpringMVC系列~
  2. python职业发展规划书范文_职业生涯规划书范文 3篇
  3. Redis基本数据类型、应用场景、操作指令
  4. python读取行政区txt文件实现行政区树_数据库的点数据根据行政区shp来进行行政区处理,python定时器实现...
  5. java se 试题_javaSE试题
  6. C# ashx生成的验证码
  7. excel如何做出弧形_如何做出酷炫且实用的可视化大屏?Excel和PPT该淘汰了
  8. springboot怎么返回404_自定义SpringBoot REST API 404返回信息
  9. 简述控制反转ioc_Spring学习之——控制反转(IoC)与依赖注入(DI)
  10. plsql能连mysql吗_80后中年夫妻做冬季热饮,一天卖300杯,女顾客:能连杯子端走吗...