ASP.NetCore---I18n(internationalization)多语言版本的应用

devtools/2024/10/9 10:51:16/

文章目录

      • 0.实现的效果如下
      • 1.创建新项目I18nBaseDemo
      • 2.添加页面中的下拉框
      • 3.在HomeController中添加ChangeLanguage方法
      • 4.在Progress.cs 文件中添加如下代码:
      • 5. 在progress.cs中添加code
      • 6.添加Resource资源文件
      • 7.在页面中引用i18n的变量
      • 8. 重启项目,应该就大功告成了!

0.实现的效果如下

  • 通过右侧下拉框的切换语言的时候,能看出页面的中语言的变化。
  • 本文会介绍的比较详细,适合新手,从0开始step by step
  • 文末有源码链接

在这里插入图片描述


I18nBaseDemo_14">1.创建新项目I18nBaseDemo

在这里插入图片描述
在这里插入图片描述


启动之后看到的效果如下:
在这里插入图片描述


2.添加页面中的下拉框

在_Layout.cshtml 文件中添加下拉框的代码:共2块代码,一块引用debug,一块是下拉框的
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

最终看到如下截图,说明如上代码添加成功了!
在这里插入图片描述


3.在HomeController中添加ChangeLanguage方法

上一步中下拉框使用了:ChangeLanguage方法,还需要在HomeController中去定义这个方法


<ul class="dropdown-menu dropdown-menu-end">
<li><a class="dropdown-item" asp-controller="Home" asp-action="ChangeLanguage" asp-route-lang="en">English</a></li>
<li><a class="dropdown-item" asp-controller="Home" asp-action="ChangeLanguage" asp-route-lang="zh">Chinese (Simplified)</a></li>
</ul>

**添加的代码如下:**

在这里插入图片描述


4.在Progress.cs 文件中添加如下代码:

在这里插入图片描述


5. 在progress.cs中添加code

在这里插入图片描述


6.添加Resource资源文件

在这里插入图片描述

将文件改为:Public
在这里插入图片描述
在这里插入图片描述


7.在页面中引用i18n的变量

在这里插入图片描述

在这里插入图片描述


8. 重启项目,应该就大功告成了!

如上代码地址:https://gitee.com/super-alien/i18n-base-demo.git
如果以上部分还有不清楚的地方,敬请期待下篇博文详细介绍…


http://www.ppmy.cn/devtools/123333.html

相关文章

Java面试题——第九篇(JVM)

1. Java中的强引用、软引用、弱引用和虚引用分别是什么 强引用 最常见的引用类型&#xff0c;在Java中&#xff0c;默认情况下&#xff0c;任何普通的对象引用都是强引用只要一个对象有强引用指向他&#xff0c;垃圾回收器永远不会回收该对象&#xff0c;即使系统内存紧张。 …

【图论】树剖(上):重链剖分

一、前置知识清单 深度优先搜索DFS 点我复习图的存储 复习链接敬请期待树状数组 点我复习 二、树剖简介 树剖&#xff08;树链剖分&#xff09;&#xff0c;是一种把树划分成链的算法&#xff0c;该算法分为重链剖分和长链剖分。 本文仅讨论重链剖分&#xff0c;长链剖分目前…

BUU刷题-Pwn-shanghai2018_baby_arm(ARM_ROP_csu_init,ARM架构入门)

解题思路&#xff1a; 泄露或修改内存数据&#xff1a; 堆地址&#xff1a;无需栈地址&#xff1a;无需libc地址&#xff1a;无需BSS段地址&#xff1a;无需 劫持程序执行流程&#xff1a;ARM_ROP && mprotect函数(运行内存权限修改) && [[ARM_ROP_csu_init]…

vue 不是spa 单页面应用吗? 配置路由工作模式为history 后 ,为什么配置Nginx的 try_files 可以根据url 找到对应的文件?

免责申明 记录用&#xff0c;本人主要是后端,可能理解有误 Vue.js 是一个前端框架&#xff0c;主要用于构建单页面应用程序&#xff08;SPA&#xff09;。然而&#xff0c;Nginx 是一个服务器端的应用程序&#xff0c;负责处理 HTTP 请求并返回相应的资源。 当在 Vue.js 应用…

【k8s深入理解之csi插件】理解存储 csi 插件的总体逻辑框架

转载自 k8s通过ceph-csi接入存储的概要分析 - 良凯尔 - 博客园如何接入 K8s 持久化存储&#xff1f;K8s CSI 实现机制浅析 - 腾讯云原生 - 博客园29 | PV、PVC体系是不是多此一举&#xff1f;从本地持久化卷谈起-深入剖析 Kubernetes-极客时间K8S-StorageClass资源-实践【补充…

Python机器学习框架介绍和入门案例:Scikit-learn、TensorFlow与Keras、PyTorch

Python机器学习框架介绍和入门案例 目录 &#x1f31f; 机器学习框架概述&#x1f4ca; Scikit-learn 2.1 模型选择与评估2.2 常用API&#xff08;fit、predict、score&#xff09;2.3 实现示例&#xff08;线性回归、K近邻&#xff09; &#x1f680; TensorFlow与Keras 3.1…

LC538 - 把二叉搜索树转换为累加树

文章目录 1 题目2 思路3 ACM模式参考 1 题目 https://leetcode.cn/problems/convert-bst-to-greater-tree/description/ 给出二叉 搜索 树的根节点&#xff0c;该树的节点值各不相同&#xff0c;请你将其转换为累加树&#xff08;Greater Sum Tree&#xff09; 累加树&#…

KiCad 综合笔记

开窗 选中顶层或者底层 Mask 层&#xff0c;然后进行覆铜&#xff1a; 四层板 KiCad Tutorial - How to make a 4 layer PCB https://bbs.elecfans.com/jishu_2365544_1_1.html 虽然在“电路板设置”中&#xff0c;可以选择铜层的类型&#xff0c;但如果选择了“电源层”&am…