【问题标题】:Difference between Localize vs Literal本地化与文字之间的区别
【发布时间】:2012-08-07 07:33:38
【问题描述】:

我刚刚阅读了 Literal 控件和 Localize 之间的区别

我知道这个问题已经被问过here,但那里提出的回复对我来说不起作用。

根据 MSDN:

Localize 控件继承自 Literal 控件,并且在各个方面都与之相同。 Localize 控件在设计时用于区分可以本地化的静态文本与其他静态文本。

我目前对 LocalizeLiteral 控件的理解是,前者在 Visual Studio 的设计时呈现默认值,而后者将呈现 计算值,例如资源的内容文件

我创建了一个小页面来证明这一点,但我找不到任何区别,这就是我尝试的原因:

    <div><asp:Localize ID="Localize1" Text="<%$Resources: Resource, String1 %>" runat="server" >String1</asp:Localize></div>
    <div><asp:Literal ID="Literal1" Text="<%$Resources: Resource, String1 %>" runat="server" >String1</asp:Literal></div>
    <div><asp:Label ID="Label1" Text="<%$Resources: Resource, String1 %>" runat="server" >String1</asp:Label></div>

以上代码呈现如下:

    <div>ploop</div>
    <div>ploop</div>
    <div><span id="Label1">ploop</span></div>

到目前为止一切都很好,但我希望在设计时发现 Visual Studio 的不同之处,但我没有,这是 Visual Studio 输出

作为补充说明,我知道在使用资源时我可以使用隐式资源(在使用本地资源时),在设计时使用默认值。示例:

    <asp:Label ID="Label1" runat="server" meta:resourcekey="Label1Resource1" 
        Text="Label"></asp:Label>

使用上面的代码,我得到了在设计时在 Visual Studio 中按预期呈现的文本 Label

那么LiteralLocalize 控件之间有什么区别?,我错过了什么?

注意:我使用网站和 Web 应用程序进行了测试

【问题讨论】:

  • 它们是相同的。 Localize 中没有添加任何代码。为什么你会期待不同的行为?
  • 因为如果它们存在,一定是有原因的。我只是想知道选择它们的原因
  • 我觉得原因是MS让我们有更多的选择。
  • ja,确实不错,但如果有选择,就必须有一个判别器才能做出正确的选择,我想知道那个原因

标签: c# asp.net


【解决方案1】:

@Jupaol,不确定您是否清楚 &lt;asp:Localize&gt; 控件的功能,但它会将文本转换为本地语言。看看When should I use a Localize control instead of a Literal?,希望这会更有意义。

【讨论】:

    【解决方案2】:

    正如你所引用的,它们在各方面都是相同的

    唯一的区别是一个是本地化。而已。这将使 其他类 能够以不同的方式对待 Literal,如果他们愿意的话。但同样:它们是相同的。

    它本质上只是一个标记类。

    【讨论】:

    • 我还没有听说过这样的事情,我的意思是,将 UI 控件作为标记对我来说没有意义。当你有接口来标记你的类但 UI 控件时,这很有意义?...你能提供一个例子吗?我无法从头顶思考一种实际用途
    • 好吧,如果 Localize 不添加任何代码,正如 MSDN 所说,唯一可能的答案是它是一个标记类。在这里,“相同”是一个非常明确的词。
    【解决方案3】:

    http://msdn.microsoft.com/en-us/library/ms227668(v=vs.80).aspx

    从 MSDN 链接中,它说“Localize 控件与 Literal Web 服务器控件相同,并且类似于 Label Web 服务器控件。”

    您可以从链接中获得更多详细信息。

    【讨论】:

      猜你喜欢
      • 2014-02-01
      • 2013-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多