加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

ASP.NET中内联标记的全球化差异

发布时间:2020-12-16 07:03:29 所属栏目:asp.Net 来源:网络整理
导读:使用内联写入标记而不是资源标记之间是否有任何优势/缺点?例: %=Resources.Site.SampleString % 在任何MSDN示例中看到的资源标记(表达式标记): asp:Literal id="Literal1" runat="server" text="%$Resources:Site,SampleString %" / 我发现第一个选项更容
使用内联写入标记而不是资源标记之间是否有任何优势/缺点?例:

<%=Resources.Site.SampleString %>

在任何MSDN示例中看到的资源标记(表达式标记):

<asp:Literal id="Literal1" runat="server" text="<%$Resources:Site,SampleString %>" />

我发现第一个选项更容易使用,它有智能感知,但也许它的功能不一样?

解决方法

这些方法的功能完全相同.后者简称第一个;有一个原因是为什么在后台生成强类型资源访问代码.因此,您可以使用任何方法.

顺便说一句,还有另一种方法 – 使用meta:resourcekey attribute.所以你应该能够写:

<asp:Literal id="Literal1" runat="server"
             meta:resourcekey="SampleString" text="Default one" />

这一切都应该完全一样.

编辑隐式本地化.

我忘了提到的是,使用meta:resourcekey必须满足某些条件.条件是:

>值取自App_LocalResources,因此需要存在相关的资源文件>相关资源文件名必须是pagename.resx,例如:Default.aspx.resx,Default.aspx.es.resx>资源文件必须包含resourcekey.propertyname形式的密钥,例如SampleString.Text,SampleString.ID(尽管我不会本地化控件ID)>由于生成资源的方式,上面提到的密钥必须存在于不变资源文件(Default.aspx.resx)中,否则它将不会被本地化.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读