在不过度使用meta:resourcekey的情况下本地化WebForms

时间:2010-11-05 02:52:35

标签: asp.net localization internationalization culture

我刚刚获得了一个需要本地化的项目 我刚刚遇到了meta:resourcekey以及它如何与本地资源文件一起使用。

我的问题是:我必须这样做吗? 在MSDN上考虑这个例子:

<asp:Button ID="Button1" runat="server" Text="DefaultText" 
       meta:resourcekey="Button1" />

如果我第一次看到这个(我是),我会说“为什么要指定Button1两次?”
如果<@ Page @>已将Culture设置为auto,并且存在本地资源文件,请查找每个控件的本地资源(如果有),而无需为每个单独执行此操作控制页面。
如果你问我的话,我看了一个我们已经拥有的页面,看起来很混乱。

我在这里遗漏了什么吗? 或者这种方法是否过时,有更好的方法吗? 所有输入(+/-)都很受欢迎 谢谢!

1 个答案:

答案 0 :(得分:4)

我同意在meta:resourcekey属性中第二次指定控件标识符似乎是多余的,但它有充分的理由。

假设您正在维护一个本地化的应用程序,比如42种语言。假设某些语言的翻译外包给6个不同的承包商。

现在想象一下,您必须将按钮的IDButton1更改为defaultButton。最好的方法是什么?

  • 更改ID属性,保持meta:resourcekey不变,然后快乐,或

  • 更改ID属性,然后修改数十个资源文件,以便他们使用新的ID,然后打电话给所有承包商,要求他们修改他们为您提供的资源文件