返回顶部
首页 > 资讯 > 后端开发 > ASP.NET >ASP.NET实现Web网站本地化
  • 214
分享到

ASP.NET实现Web网站本地化

2024-04-02 19:04:59 214人浏览 安东尼
摘要

1、重写InitializeCulture方法。 在Global.asax中的Application_BeginRequest获取或设置语言,每次页面的请求都首先运行这个方法,然后再

1、重写InitializeCulture方法。

在Global.asax中的Application_BeginRequest获取或设置语言,每次页面的请求都首先运行这个方法,然后再运行具体页面的InitializeCulture重载方法。

附上一张图,看看页面方法和事件的执行顺序

protected override void InitializeCulture()
{
    String curCulture = Request.QueryString["currentculture"];
    if (!String.IsNullOrEmpty(curCulture))
    {
        HttpCookie cookie = new HttpCookie("preferCulture", curCulture);
        cookie.Expires = DateTime.Today.ADDDays(7);
        Response.SetCookie(cookie);//设置Cookie
        Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(s);
        Thread.CurrentThread.CurrentUICulture = new CultureInfo(s);
    }
    else
    {
        HttpCookie cookie = new Request.Cookies["preferCulture"];//取得Cookie
        if (cookie != null)
        {
            curCulture = cookie.Value.ToString();

            Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(curCulture);
            Thread.CurrentThread.CurrentUICulture = new CultureInfo(curCulture);
        }
    }
}

除了通过IE浏览器和线程获取语言设置,其实我们可以自己设置使用哪种语言。 
1)通过在每个页面里的Page节指定

<%@ Page Culture="en-us" UICulture="en-us" %>

如上所设,该页将使用en-us的语言设置。 
注意:这只是个概要式写法,实际的页面中的Page一般都包含更多的属性。 
2)通过在WEB.Config里的globalization节指定

<system.web>
<globalization Culture="en-us" UICulture="en-us" />
</system.web>

2、添加资源语言文件

项目App_GlobalResource文件夹添加Demo.resx和Demo.en-us.rex两个文件

在首页中添加:

<a href="?currentculture=zh-cn" rel="external nofollow" >中文(中国)</a>
 
<a href="?currentculture=en-us" rel="external nofollow" >English(USA)</a>

3、获取全局资源(GlobalResources)的方式:

你能从 ~\App_GlobalResources\MyMessages.resx 得到的资源通过:

1、产生的封装代码 :

string message = Resources.MyMessages.Hello;

2、资源表达式

<asp:Label Text="<%$ Resources: MyMessages, Hello %>" />

3、GetGlobalResourceObject方法

string message = GetGlobalResourceObject("MyMessages", "Hello");

4、本地资源的获取方法:

你能从 ~\App_LocalResources\default.aspx.resx 得到的资源通过:

1、资源表达式:

<asp:Label Text="<%$ Resources: Hello %>" />

2、meta:resourceKey :

<asp:Label meta:resourceKey="labelResourceKey" />

3、GetLocalResourceObject方法:

string message = GetLocalResourceObject("Hello"); "

到此这篇关于asp.net实现Web网站本地化的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持编程网。

--结束END--

本文标题: ASP.NET实现Web网站本地化

本文链接: https://lsjlt.com/news/151438.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • ASP.NET实现Web网站本地化
    1、重写InitializeCulture方法。 在Global.asax中的Application_BeginRequest获取或设置语言,每次页面的请求都首先运行这个方法,然后再...
    99+
    2024-04-02
  • ASP.NET如何实现Web网站本地化
    本文小编为大家详细介绍“ASP.NET如何实现Web网站本地化”,内容详细,步骤清晰,细节处理妥当,希望这篇“ASP.NET如何实现Web网站本地化”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1、重写Initi...
    99+
    2023-07-02
  • ASP.NET MVC实现本地化和全球化
    在开发多语言网站时,我们可以为某种语言创建一个资源文件,根据浏览器所设置的不同语言偏好,让运行时选择具体使用哪个资源文件。资源文件在生成程序集的时候被嵌入到程序集。 本篇体验,在AS...
    99+
    2022-11-13
    ASP.NET MVC 本地化 全球化
  • ASP.NET Core WebAPI实现本地化(单资源文件)
    在Startup ConfigureServices 注册本地化所需要的服务AddLocalization和 Configure<RequestLocalizationO...
    99+
    2022-06-07
    本地化 webapi core ASP net ASP.NET 源文件
  • 如何使用gettext技术为ASP.NET网站实现国际化支持
    这篇文章将为大家详细讲解有关如何使用gettext技术为ASP.NET网站实现国际化支持,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。不知道有多少人对这个题目感兴趣,因为最近在做一个网站玩玩...
    99+
    2023-06-17
  • WordPress的JavaScript 本地化实现
    目前对大多数人来说是一个无用的功能, 甚至有人认为这是 WordPress 卑鄙地偷偷地在页面上埋了一个扯淡的脚本, 所以网上能找到的都是如何卸载脚本的方法. 在我们卸载之前, 是不是应该先了解一下这是怎样的一个功能, ...
    99+
    2022-06-12
    JavaScript 本地化
  • ASP.NET如何实现WEB控件
    小编给大家分享一下ASP.NET如何实现WEB控件,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!ASP.NET的WEB控件分二大类,分别在System.Web.UI.WebControls、System.Web.UI.Ht...
    99+
    2023-06-18
  • 公网访问的Linux CentOS本地Web站点搭建指南
    文章目录 前言1. 本地搭建web站点2. 测试局域网访问3. 公开本地web网站3.1 安装cpolar内网穿透3.2 创建http隧道,指向本地80端口3.3 配置后台服务 4. 配置...
    99+
    2023-09-08
    linux centos 前端
  • 怎么使用cpolar内网穿透将本地web网站发布上线
    本篇内容介绍了“怎么使用cpolar内网穿透将本地web网站发布上线”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. 启动Apache服务...
    99+
    2023-07-05
  • 使用ASP.NET怎么创建一个网站web页面
    使用ASP.NET怎么创建一个网站web页面?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。创建网站从网上下载VS2017,我接触的朋友和公司大多数都是使用VS2017/VS20...
    99+
    2023-06-14
  • 如何用Ngork实现外网访问你的本地Web项目
    如何用Ngork实现外网访问你的本地Web项目,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。 前言有时候你在本地写了一个web项目,地址是http:localhost...
    99+
    2023-06-17
  • windows本地搭建wordpress网站
    常见网站及结构介绍 网站 -- 博客 cms(content managerment system)   商城 博客、论坛:wordpress  discuz cms:dedecms(织梦cms)  帝国cms 商城:ecshop Wor...
    99+
    2023-10-05
    php 服务器 数据库
  • 如何使用ASP.NET创建网站并设计web页面
    目录创建网站设计页面创建网站 1.从网上下载VS2017,我接触的朋友和公司大多数都是使用VS2017/VS2019,我查过,差别不大,不影响学习,但不建议项目中突然改变版本,升级或...
    99+
    2024-04-02
  • VS11 ASP.NET Web Pages 2如何快速网站开发构建
    本篇文章给大家分享的是有关VS11 ASP.NET Web Pages 2如何快速网站开发构建,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。ASP.NET Web Pages ...
    99+
    2023-06-17
  • ASP.NET中怎么实现静态网站滚动更新
    这期内容当中小编将会给大家带来有关ASP.NET中怎么实现静态网站滚动更新,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Intro最近我们老板想让我实现一个静态网站“滚动更新”的功能,其实就是希望网站部署...
    99+
    2023-06-20
  • HTML5 Web Workers怎么实现网站多线程
    这篇文章主要介绍了HTML5 Web Workers怎么实现网站多线程的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇HTML5 Web Workers怎么实现网站多线程文章都会...
    99+
    2024-04-02
  • ASP.NET网站性能优化的方法是什么
    本篇内容主要讲解“ASP.NET网站性能优化的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“ASP.NET网站性能优化的方法是什么”吧!在用ASP.NET开发网站的时候,性能是永远需要...
    99+
    2023-06-17
  • Asp.net网站的性能优化方法是什么
    这篇文章主要介绍“Asp.net网站的性能优化方法是什么”,在日常操作中,相信很多人在Asp.net网站的性能优化方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Asp.net网站的性能优化方法是什么...
    99+
    2023-06-17
  • Holer如何实现手机APP应用外网访问本地WEB应用
    小编给大家分享一下Holer如何实现手机APP应用外网访问本地WEB应用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1. 准备工作1.1 安装并启动WEB服务端...
    99+
    2023-06-05
  • go web 预防跨站脚本的实现方式
    目录一 点睛二 先看一个转义的例子三 使用 text/template 进行处理四 使用 html/template 进行...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作