我有一个包含许多值的全局资源文件
目前在代码中我调用了这样的值
TxtSuccess.Text = (string) GetGlobalResourceObject("GlobalResource", "msgSuccess");
但如果在设计的后期我们需要重命名变量,那么维护就会很痛苦。
做这样的事情会更好吗?
public class AppGlobalConstants
{
public string MsgSuccess{ get; private set; }
public AppGlobalConstants()
{
MsgSuccess= (string) GetGlobalResourceObject("GlobalResource", "msgSuccess");
}
}
然后,如果团队后来希望更改其中某些全局资源的名称,则无需修改使用这些资源的任何页面。
我们希望使用全局变量,因为我们的Web应用程序(asp.net web forms 4.5)计划将来可用于其他国家/地区和语言。
答案 0 :(得分:1)
我宁愿做这样的事情:
public static class AppGlobalConstants
{
public static string MsgSuccess
{
get
{
return (string) GetGlobalResourceObject("GlobalResource", "msgSuccess");
}
}
}
这样,值是静态的。如果名称发生更改,您只需修改此类中的字符串即可。因为这个类中的所有内容都是静态的,所以你可以这样做:
Console.WriteLine(AppGlobalConstants.MsgSuccess);
如果需要,还可以为属性添加set访问器。因为一切都是静态的,所以不需要创建这个类的实例。