学习使用ASP.NET 2.0的本地化
譬如我有一个登陆页面,上面有两个Label和两个Textbox,页面命名为Login.aspx,控件命名为lbl_UserName,lbl_Password,txt_UserName,txt_Password。
首先可以在网站上新建一个App_LocalResources的文件夹,然后新建一个资源文件,命名为Login.aspx.resx
命名需要跟匹配的页面名字相同。然后再新建另一个资源文件,命名为Login.aspx.zh-Cn.resx
Login.aspx.resx 这个为默认的,而Login.aspx.zh-Cn.resx这个为当浏览器默认语言设为中文的时候调用的。
打开Login.aspx.resx文件:
名称 值
LabelResource1.Text Username
LabelResource2.Text Password
打开Login.aspx.zh-Cn.resx文件:
名称 值:
LabelResource1.Text 用户名
LabelResource2.Text 密码
然后,在我们的页面代码中
把
1<asp:Label ID="lbl_UserName" runat="server"></asp:Label>
2<asp:Label ID="lbl_Password" runat="server"></asp:Label>改为
1<asp:Label ID="lbl_UserName" runat="server" Text="<%$ Resources:LabelResource1.Text %>"></asp:Label>
2<asp:Label ID="lbl_Password" runat="server" Text="<%$ Resources:LabelResource2.Text %>"></asp:Label>
3
最后,在页面的Page属性中,加上 Culture="auto:zh-Cn" UICulture="auto:zh-Cn" ,默认设为了中文。
编译便可以看到效果,当浏览器默认语言为英文时,可以看到两个Label的显示为Username和Password。
当浏览器默认语言为中文时,可以看到两个Label的显示为用户名和密码。
相关推荐
-
asp.net 支持多语言站点的实现方法
1,在web站点中新建两个resources文件如下 Resources.resx中的文件信息 Resources.en-us.resx中的文件信息 Default.aspx的代码 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" Culture="Aut
-
asp.net web页面元素的多语言化(多国语化)实现分享
开发的一些系统,经常要求支持多语言(例如日文,英文等),以前大部分做法是创建一个资源文件, 将每一个标签,按钮等标题文字预先用各种语言设定保存好, 在程序中根据选择的语言来显示对应文字. 这样做的缺点是如果每次改动或增加一个控件,都需要程序开发人员刻意做多语言对应, 如果用户想要改某些标题的描述,还需要开发人员改动资源文件并替换到程序发布目录. 经过调查实验,最终想了一个办法来较好地对应此问题: 在每一个web页面,设定一个只有最高级的管理权限才能看到的一个按钮(例如叫"设定"), 来
-
初识ASP.NET Mvc5+EF7的奇妙之旅
话说今年微软是很给力的,Win10算是吸引了大众的眼球了,而最新的.NET5框架更是OK. 最新的.NET5进行了开源,同时利用NuGet以及Node和Bower进行了跨平台化:这意味这可以直接在Mac或者Linux上使用.NET进行开发. 而最新的Mvc5和EF框架也算是进行了换脸了,跟之前Mvc4的项目都不一样,如果进行移植除了核心代码可以拷贝过来,其他的统统要重新来过. 最近准备改版一下网站,所以尝试了一把最新的框架:当然由于现在还是预览版所以改动什么的都超大,所以也走了不少弯路:特在此记
-
ASP.NET MVC的Localization本地化多语言支持
一.ASP.NET MVC的本地化支持 ASP.NET MVC的是基于ASP.NET运行,所以由ASP.NET提供的所有功能,都可以在MVC里使用,例如缓存,会话状态和本地化. 在传统的ASP.NET Web窗体时代我们使用资源文件存储不同语言中的内容和使用由Visual Studio自动生成的ResourceManager类来检索它们.在ASP.NET MVC他们一样有效的. 让我创建一个标准的ASP.NET MVC的一个示例应用程序.该网站是中文的,我们可以看到所有的内容都是在视图和控制器类
-
asp.net mvc下拉框Html.DropDownList 和DropDownListFor的常用方法
一.非强类型: Controller: ViewData["AreId"] = from a in rp.GetArea() select new SelectListItem { Text=a.AreaName, Value=a.AreaId.ToString()
-
ASP.NET MVC中HtmlHelper控件7个大类中各个控件使用详解
HtmlHelper类在命令System.Web.Mvc.Html之中,主要由7个静态类组成,它们分别是FormExtensions类,InputExtensions类,LinkExtensions类,SelectExtensions类,TextExtensions类,ValidationExtensions类,RenderPartialExtensions类. 为了方便开发者使用HtmlHelper控件,在视图ViewPage类中设置了一个属性Html它就是HtmlHelper类型. 一.Fo
-
使用asp.net MVC4中的Bundle遇到的问题及解决办法分享
背景 之前有过使用MVC3的经验,也建过MVC4的基本样例看过,知道有bundle这么一个方法. 近日想建个网站使用MVC4,但是我觉得在基本样例上改不好,有太多无用的东西,所以就建了一个空白的MVC的程序,然后自己写需要的东西, 将程序的目标框架从4.5降到了4.0(我使用的是VS2013),问题就来了. 问题及解决办法 1.降了目标框架之后,vs报一个警告:NuGet程序包是使用不同于当前目标框架的目标框架安装的,需要更新System.Web.Http,之前有用过NuGet, 但是只是
-
ASP.NET MVC Bundles 用法和说明(打包javascript和css)
在网页中,我们经常需要引用大量的javascript和css文件,在加上许多javascript库都包含debug版和经过压缩的release版(比如jquery),不仅麻烦还很容易引起混乱,所以ASP.NET MVC4引入了Bundles特性,使得我们可以方便的管理javascript和css文件. 原来,我们引用css和javascript文件我们需要这样一个一个的引用: 复制代码 代码如下: <scriptsrc="~/Scripts/jquery-1.8.2.js">
-
asp.net 2.0多语言网站解决方法
首先在App_GlobalResources新建resx资源文件.如: 不同语言的resx中项目应该具有相同的名称: 中文资源项 英文资源项 完了以后就可以使用这些名值对了, 复制代码 代码如下: <asp:Literal ID="Literal1" runat="server" Text="<%$ Resources:lang,userinfo%>" /> 或者 复制代码 代码如下: <%=Resources.la
-
学习使用ASP.NET 2.0的本地化
譬如我有一个登陆页面,上面有两个Label和两个Textbox,页面命名为Login.aspx,控件命名为lbl_UserName,lbl_Password,txt_UserName,txt_Password. 首先可以在网站上新建一个App_LocalResources的文件夹,然后新建一个资源文件,命名为Login.aspx.resx 命名需要跟匹配的页面名字相同.然后再新建另一个资源文件,命名为Login.aspx.zh-Cn.resx Login.aspx.resx 这个为默认的,而Lo
-
CodeFirst从零开始搭建Asp.Net Core2.0网站
一步步教大家如何搭建Asp.Net Core2.0网站,以下所有都是建立在.NETCore2.0环境已经搭建好 右键解决方案>新建项目> 选择Web>ASP.NETCoreWeb应用程序(.NET Core) 选择Web应用程序,暂时不选择启用Docker,身份验证选择个人用户账户(会自动生成一系列和用户认证的代码) 随后生代码层次目录如下: 其中会包含身份信息的相关实现,比如相关实体信息(user)之类的,如果想对扩展微软自动的生成的用户实体类,可在Models中的Applicatio
-
asp.net 4.0+ webform程序中集成mvc4
本文为大家分享了asp.net 4.0+ webform程序中集成mvc4的方法,供大家参考,具体内容如下 1.新建packages.config文件,里面加上必要的程序集 <?xml version="1.0" encoding="utf-8"?> <packages> <package id="Microsoft.AspNet.Mvc" version="4.0.20710.0" target
-
asp.net mvc3.0安装失败如何解决
先来看看安装失败的截图 原因分析 因为vs10先安装了sp1补丁,然后安装的mvc3.0,某些文件被sp1补丁更改,导致"VS10-KB2483190-x86.exe"安装不了,造成安装失败. 解决方案 方法1: 解压mvc安装包(AspNetMVC3Setup.exe)找到parameterinfo.xml文件,删除里面"<Exe CanonicalTargetName="VS10-KB2483190-x86".....</Exe>&q
-
在ASP.NET 2.0中操作数据之七十四:用Managed Code创建存储过程和用户自定义函数(下部分)
第八步:从表现层调用Managed Stored Procedures 当对数据访问层和业务逻辑层进行扩充以支持调用GetDiscontinuedProducts 和 GetProductsWithPriceLessThan这2种managed stored procedures后,我们可以在一个ASP.NET页面里展示这些存储过程的结果了. 打开AdvancedDAL文件夹里的ManagedFunctionsAndSprocs.aspx页面,从工具箱拖一个GridView控件到设计器,设其ID
-
在ASP.NET 2.0中操作数据之七十三:用Managed Code创建存储过程和用户自定义函数(上部分)
导言: 数据库,比如Microsoft's SQL Server 2005使用Transact-Structured Query Language (T-SQL)来插入.修改.检索数据.绝大多数数据库系统都包含constructs来对一系列的SQL statements进行分组,这些statements可以作为单独的单元来执行.存储过程就是一个例子,另一个例子是用户自定义函数(UDFs), 我们将在第9步进行详细的探讨. SQL是设计来处理一系列数据的. SELECT,UPDATE,和DELET
-
在ASP.NET 2.0中操作数据之七十二:调试存储过程
导言: Visual Studio有很多的调试功能.我们只需要稍稍点点鼠标,敲敲键盘就可以使用断点(breakpoints)来打断某个程序的执行,并查看其状态.除了调试代码以外,Visual Studio也支持对SQL Server里面的存储过程进行调试.就像可以在ASP.NET页面的后台代码类或Business Logic Layer class类里设置断点一样,我们也可以在存储过程里设置断点. 本文我们将考察如何在Visual Studio的Server Explorer里进入存储过程并设置
-
在ASP.NET 2.0中操作数据之七十一:保护连接字符串及其它设置信息
导言: ASP.NET应用程序的设置信息通常都存储在一个名为Web.config的XML文件里.在教程的前面部分我们已经好几次修改过Web.config文件了.比如在第一章,我们创建名为Northwind的数据集时,数据库连接字符串信息自动的添加到Web.config文件的<connectionStrings>节点.再后来,在第3章里,我们手动更新了Web.config文件,添加了一个<pages>元素,对所有的ASP.NET页面运用DataWebControls主题. 由于Web
-
在ASP.NET 2.0中操作数据之七十:配置数据库连接和命令等级设置
导言: 在本系列我们用类型化的DataSets来构建数据访问层.就像在第一章探讨的那样,类型化DataSets的DataTables用作存储数据的"仓库",而TableAdapters作为连接数据库的通道,以检索.修改数据.TableAdapters 将处理数据库的很多复杂的细节进行了封装,将我们解脱出来,免去了写代码连接数据库.发出命名.向DataTable填充数据的痛苦. 不过在某些时候我们需要深入的探究TableAdapter,直接写代码处理ADO.NET对象.在第61章<
-
在ASP.NET 2.0中操作数据之六十九:处理Computed Columns列
导言: Microsoft SQL Server里有一种computed columns列.这种列的值是通过一个表达式来计算,而表达式引用的是同一张表的其它列的值.打个比方,有一张ServiceLog表,其包含了ServicePerformed, EmployeeID, Rate, Duration等列. 虽然我们可以在一个web页面或其它什么界面里计算每笔服务的费用(也就是 比率 rate乘以时间段duration),不过我们也可以手动向ServiceLog表添加一个 AmountDue列以反
随机推荐
- iOS添加购物车动画效果示例
- iOS 隐藏tabbar代码详解
- .net自定义事件示例分享
- js实现图片加载淡入淡出效果
- PHP 抽象方法与抽象类abstract关键字介绍及应用
- php简单统计在线人数的方法
- Android VideoView类实例讲解
- Android App在线程中创建handler的方法讲解
- php skymvc 一款轻量、简单的php
- PHP中查询SQL Server或Sybase时TEXT字段被截断的解决方法
- 利用n 升级工具升级Node.js版本及在mac环境下的坑
- 动态改变textbox的宽高的js
- 微信小程序canvas写字板效果及实例
- jQuery性能优化技巧分析
- C++实现正态随机分布的方法
- “增强js程序代码的健壮性”之我见大量示例代码
- ssh远程登陆没有用户名和主机名的解决方法
- Android ViewPager动态加载问题
- PHP+Ajax实现的无刷新分页功能详解【附demo源码下载】
- swoole和websocket简单聊天室开发