简单的多语言Webpart
在安装完MOSS的语言包及为MOSS网站设置为”变体“及添加完“变体标签“功能后,使MOSS站点就可以支持多语言切换了,即然创建的MOSS网站可以支持多语言,那么于该网站为宿主网站将创建好的Webpart部署到该网站。这时WebPart也应该编写成支持多语言的功能,这样Webpart就可以在网站切换成不同的语言版本后,内容语言也随之变化。
利用Visual Studio 2005或Visual Studio 2008(以下简称VS)来创建Webpart,在安装VS的时候默认是不自动安装创建Webpart模版的,所以的自己下载安装创建Webpart扩展插件VS 2005的安装是VSeWSSv11.exe,VS2008的安装VSeWSSv12.exe,在安装完成后,打开VS后创建新建目的窗体中就会多出名为SharePoint的栏目,在这栏目中就有了创建Webpart的项目模版了,如下图:
根据项目模版创建Webpart并添加可以读取本地化的资源文件里的内容,以便于支持多语言的需求。
假设要为端口号为8010的Sharepoint网站(如http://tecpc:8010)创建多语言的Webpart。
一、在C:"Inetpub"wwwroot"wss"VirtualDirectories"8010"App_GlobalResources目录下打开wss.zh-CN.resx文件并在文件中创建自定义的资源数据并保存如:
<data name="customResource">
<value>测试多语言ShapePoint网站WebPart部件!</value>
</data>
在同一目录下打开wss.en-US.resx资源文件,也在文件中创建相同名称的资源数据,但是<value>中内容是不同,保存数据,如:
<data name="customResource">
<value>Testing multi-lingual website ShapePoint parts WebPart success!</value>
</data>
二、在Webpart中读取资源文件中自定义的数据,并部署到http://tecpc:8010 的Sharepoint网站上,在这里介绍下如何在Webpart里读取资源文件里的内容。
引用System.Web命名空间中的HttpContext类来读取资源文件内容的如下:
HttpContext.GetGlobalResourceObject("wss","customResource")这返回的类型为Object类型的。
创建Webpart的其他的步骤跟日常写的一样。
部署WebPart到Sharepoint站点中,右击创建的WebPart项目属性->调试->输入要Webpart的宿主网站的URL(如http://tecpc:8010)后,按F5启动部署WebPart,最后在网站的页面上添加此WebPart。
最后运行的结果如下(中文):
切换到英文后运行的结果如下图: