loading ...
loading...

2008-03-17 | ASP.NET 2.0 本地化 API 函数或使用控件来检索资源

分享
标签: 资源  本地化  模型  控件  检索 
在 ASP.NET 2.0 中,可以从任何页面使用本地化 API 函数或使用控件来检索资源。例如,以下代码分别检索本地页面资源和全局资源。
this.labHelloLocal.Text = this.GetLocalResourceObject("labHelloLocalResource1.Text") as string;

this.labHelloGlobal.Text = this.GetGlobalResourceObject("CommonTerms", "Hello") as string;
我前面提到,声明性本地化表达式也可用于设置资源中的页和控件属性。隐式本地化表达式,如:
<asp:Label ID="labHelloLocal" runat="server" Text="Hello" meta:resourcekey="labHelloLocalResource1" ></asp:Label>
和显式本地化表达式,如:
<asp:Label ID="labHelloGlobal" runat="server" Text="<%$ Resources:CommonTerms, Hello %>" ></asp:Label>
用于生成代码以调用 GetLocalResourceObject() 和 GetGlobalResourceObject()。应该告诉您的是,ASP.NET 2.0 访问资源的方式最终是通过这些方法实现的,即使您利用了声明性表达式的便利。 这也正是资源提供程序模型起作用的地方。这些 API 调用依赖默认或自定义 ResourceProviderFactory 才能找到正确的资源条目并收集其值。默认的 ResourceProviderFactory 为上面提到的 ResXResourceProviderFactory 类型。此工厂为全局资源返回 GlobalResXResourceProvider 的一个实例,为本地页面资源返回 LocalResXResourceProvider 的一个实例。 最后,这些提供程序依赖 ResourceManager 以访问相应附属程序集中的各个资源。提供程序使用 ResourceReader 在页面解析步骤期间收集页面资源集合。图 3 说明了与默认资源提供程序模型关联的这些重要组件。 .
图 3 组成默认资源提供程序模型的组件:提供程序工厂、本地和全局资源提供程序、资源管理器及访问各资源类型的资源读取器
此提供程序具有以下一些优点:
  1. 它处理各 ResourceManager 的激活和生存期。
  2. 本地化表达式及其他资源 API 利用提供程序查找资源,因此通过简化和提取的 API 增加了生产率。
  3. 提供程序模型可扩展,因此可以继续利用 ASP.NET 2.0 的生产力功能的同时,更改资源存储位置。
现在,我将介绍如何建立自定义资源提供程序。
分享 分享 |  评论 (0) |  阅读 (?)  |  固定链接 |  发表于 14:39
搜狐博客温馨提示:搜狐博客官方不会要求参加活动的各位博友缴纳任何的手续费用。请勿轻信留言、评论中的中奖信息,更不要拨打陌生电话及向陌生帐户汇款,谨防受骗!识别更多网络骗术,请 点击查看详情
您还未登录,只能匿名发表评论。或者您可以 登录 后发表。
 
  *中国人爱国心,搜狗输入法爱国主题皮肤下载>>
表  情:
加载中...
回复通知: 同时用小纸条通知对方该回复