有两种方法,一是本地化web.sitemap,二是在不同的文化/语言中使用不同的SiteMapProvider。
直接本地化web.sitemap有可分为隐式表达式(Implicit Expression)和显式(Explicit)表达式。我喜欢用隐式表达式,因为这样子自己要手工输入的东西会少一些。在web.sitemap中首先要增加enableLocalization, 并把它设成true。其次,要为需要翻译的 siteMapNode 增加 resourceKey, 作为资源文件中的标识。比如
<siteMap enableLocalization="true"
xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode url="~/Default.aspx" title="Home"
description="Home Page" resourceKey="Home">
然后要增加相应的资源文件 web.sitemap.resx 和本地化的的资源文件(比如 web.sitemap.zh-CN.resx ),而且必须放在 App_GlobalResources 文件夹中(Beta 1 中是 Resources 文件夹)。资源文件中要增加的内容的名称/标识(name)要和 web.sitemap 对应,按照上面的例子就是 Home.title 和 Home.description, 等等。
如果要使用显式表达式,先要在 App_GlobalResources 文件夹中增加公用的资源文件,比如AppResource.resx。然后相应的 weib.sitemap 要作如下修改。
<siteMap enableLocalization="true"
xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode url="~/Default.aspx" title="$resources: AppResource, HomeTitle"
description="$resources: AppResource, HomeDesc">
在资源文件中对应的名称/标识就应该是 HomeTitle 和 HomeDesc。
第二种方法就是针对不同的文化/语言使用不同的SiteMapProvider,不过我觉得不如上面的方法好。首先在web.config中增加自定义的SiteMapProvider,如下所示。
<siteMap>
<providers>
<add name="AspNetXmlSiteMapProvider_zhCN"
type="System.Web.XmlSiteMapProvider, System.Web, ..."
siteMapFile="sitemap.zh-CN.xml"
ASP.NET 2.0: 在使用web.sitemap时,如何实现本地化
时间: 2024-11-08 22:16:06
ASP.NET 2.0: 在使用web.sitemap时,如何实现本地化的相关文章
asp.net 2.0 中加密web.config 文件中的配置节
asp.net|web|加密 在asp.net2.0中新增了对web.config中的部分数据进行加密的功能,可以使用RSAProtectedConfigurationProvider和DPAPIProtectedConfigurationProvider来加密,本文说明使用RSAProtectedConfigurationProvidert和计算机级别的密钥容器进行加密的步骤. 1. 首先确定要进行加密的web.config中的配置节是否可以加密 2. 创建RS
探讨ASP.NET 2.0中的Web控件改进技术
asp.net|web|控件 ASP.NET 2.0并没有抛弃1.1版本中的任何现有控件,而是增加了一组新的控件;同时还引入了若干新的控件开发技术.本系列文章将对这些内容展开全面探讨. 一. 引言 到目前为止,你可能已经了解了大量的ASP.NET 2.0新特征-母版页面,主题,提供者,等等--所有这样内容都相当精彩;但是,你是否了解到有关定制Web控件开发方面的重大变化?这正是我在本文中所想讨论的.如果你已经从事于控件开发,那么,我想本文所描述的ASP.NET 2.0中的新的改进特征会立即应用于
如何在ASP.NET 2.0中使用 Web Parts
asp.net|web Web Parts 是ASP.NET2.0中一个非常令人感兴趣的特性.它为创建动态的网页接口提供了一系列的可用控件,使得用户非常容易就可以进行配置或者个性化页面.用户可以显示.隐藏或者移动Web Parts组件.下面,我将为大家介绍一下Web Parts的概貌. 划分页面 Microsoft SharePoint的开发人员和用户可能会对Web Parts比较熟悉,因为Web Parts就是SharePoint开发环境中的一项标准属性.Web Parts是控制部分页面的软件
在ASP.NET 2.0中使用Web Parts
划分页面 microsoft SharePoint的开发人员和用户可能会对Web Parts比较熟悉,因为Web Parts就是SharePoint开发环境中的一项标准属性.Web Parts是控制部分页面的软件组件.在ASP.NET2.0中,Web Parts提供了菜单,用户可以用其来控制组件的动作,例如隐藏.最大化.编辑等. 处理Web Parts时需要理解的一个关键概念就是网页的划分.一般来说,一个页面会被划分为很多部分,称为区域.在ASP.NET 2.0中,Web Parts的版式设计就
解决ASP.NET 4.0尚未在 Web 服务器上注册的出现场景问题
今天遇到一个问题: ASP.NET 4.0尚未在 Web 服务器上注册.为了使网站正确运行,可能需要手动将 Web 服务器配置为使用 ASP.NET 4.0,按 F1 可了解更多详细信息. 其实以前就遇到多次了,只是今天遇到的情况不一样. 以前一般是这个情况: 1.在iis 6 部署 .net 4.0的asp.net程序的时候出现这个错误.应该是先装的.net 4.0,再装的iis6就会出现这个问题. 解决方法: 首先设置IIS应用程序池 net framework版本为4.0 注意事项:一定
[转]利用ASP.NET 2.0创建自定义Web控件(2)
原址:http://hi.baidu.com/sjbh/blog/item/5a8298454403a321cffca39c.html 如何生成的? Render() 方法基本上控制着 WebControl 的整个输出.默认情况下,Render() 方法实际上会依次调用 RenderBeginTag().RenderContents() 以及 RenderEndTag().尽管在 ASP.NET 1.x 中调用结构并未变化,但由于该呈现模型,修改这些调用的影响却发生了变化. 您可以覆盖 Re
ASP.NET 2.0中的Web和HTML服务器控件
asp.net|web|服务器|控件 除了代码和标记之外,ASP.NET 2.0页面还可以包含服务器控件,它们是可编程的服务器端对象,典型情况下表现为页面中的UI元素(例如文本框或图像).服务器控件参与页面的执行过程,并给客户端生成自已的标记呈现内容.服务器控件的优势在于,它让开发者从简单的积木式的组件中获取复杂的呈现方式和操作行为,极大地减少了生成动态Web页面所需要编写的代码量:另外一个优势是,定制它们的呈现方式和行为非常简单.服务器控件所暴露的属性可以通过宣告式(在标记中)或编程(在代码中
asp.net 2.0中不同web控件之间的相互调用
asp.net|web|控件 在asp.net 2.0中,要在不同的web控件之间互相调用,必须要<%@ Reference VirtualPath="另一控件名称">来引用,举例如下 default.aspx:<form id="form1" runat="server"> <uc1:WebUserControl id="WebUserControl1" runat="s
在 ASP.NET 2.0 中创建 Web 应用程序主题
asp.net|web|程序|创建 引言 主题是 Microsoft ASP.NET 2.0 的一项新增功能,使用此功能可以一次定义一组控件的外观,并可以将该外观应用于整个 Web 应用程序.例如,通过利用主题功能,您可以在一个中心位置为应用程序中的所有 TextBox 控件定义共同的外观,如背景颜色和前景颜色.使用主题功能可以轻松建立并维护整个网站外观的一致性. 主题与级联样式表并不相同.使用级联样式表可以控制浏览器上的 HTML 标记的外观.而主题则应用在服务器上,并适用于 ASP.NET