在运行时选择代码隐藏中的资源文件
本文关键字:资源 源文件 隐藏 运行时 选择 代码 | 更新日期: 2023-09-27 18:21:26
假设我有两个资源文件;一个被称为CCD_ 1,另一个被称作CCD_。我看过一些在线教程,这些教程展示了如何根据用户在浏览器中的设置自动选择资源文件。
我想在运行时选择资源文件,如下所示:
protected void Page_Load(object sender, EventArgs e)
{
switch (TheLanguage) {
case 1:
// select the English file HomeEN.resx;
break;
case 2:
// select the French file HomeFR.resx;
break;
}
}
我该如何写这些声明?
通过设置页面的Culture
和UICulture
属性,可以自动读取正确的资源文件。请参阅MSDN示例
您只需要重命名文件以分别匹配预期的模式Home.en.resx
和Home.fr.resx
。
protected void Page_Load(object sender, EventArgs e)
{
System.Threading.Thread.CurrentThread.CurrentCulture = someCulture;
System.Threading.Thread.CurrentThread.CurrentUICulture = someCulture;
}
之后,如果你也遵循@devio的上述解决方案,资源文件将被自动选择。
如果您想访问这两种资源,可以使用ResourceManager类
ResourceManager rm = new ResourceManager("Strings", typeof(Example).Assembly);
string strDE = rm.GetString("TheNameOfTheResource", new CultureInfo("de"));
string strES = rm.GetString("TheNameOfTheResource", new CultureInfo("es"));