Dotnetnuke的本地化

Dotnetnuke在asp.net2.0的本地化做了很多,其中要介绍的一个类是DotNetNuke.Services.Localization.Localization.GetString(),它可以加载资源文件里的字符串(当然,还有其他的Get...(),大家可以自己研究)。之前试图通过GetLocalResourceObject获得资源,在独立的网站页面里可以通过,但在Dotnetnuke的模块ascx开发中却总是行不通。后来比较DotNetNuke的代码,发现DotNetNuke中都是使用Localization.GetString()来实现,这个方法可以获得资源,实现本地化。下面分本地和全局资源来介绍:

读取本地资源

需要注意的是这个方法的name参数需要额外的.Text才能得到资源,比如我在资源文件中加入一个键值是MyMessage的资源字符串,通过下面代码就得不到:
Localization.GetString( " MyMessage " , LocalResourceFile) ;

而将资源文件中的键名改为:MyMessage.Text,再通过下面代码就能得到,

Localization.GetString( " MyMessage.Text " , LocalResourceFile);

这个不知道是否是Bug还是有其他限制。

读取全局资源
在Dotnetnuke中提供了2个全局资源文件:GlobalResource, SharedResource,可以调用
Dotnetnuke.Services.Localization.Localization.GetString(...., GlobalResourceFile)读取全局资源,可是有时候我们需要增加自己的全局资源文件,可以通过下面方式读取:

 Localization.GetString( " NotFoundPageSettings.Error " ,
                                        Localization.ApplicationResourceDirectory 
+   " /MyGlobalResources.resx " )

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值