我在下面的课程中设置了网站上“正在运行的”语言的语言。
现在,我只是在输入/输出注释我想要选择的语言,然后再运行/调试项目。
我希望能够在我的网站运行时动态地更改语言。
您将如何做到这一点(我想避免使用会话参数或将运行的cookie解决它以后的某个日期退出)
public class LanguageCodes
{
public const string DenmarkCode = "DK";
public const string SwedenCode = "SE";
}
public class LanguageFactory
{
public static readonly string CurrentLanguage =
LanguageCodes.DenmarkCode;
//LanguageCodes.SwedenCode;
public static AbstractLanguage Current {
get {
switch (CurrentLanguage)
{
case LanguageCodes.DenmarkCode: return new LanguageDK();
case LanguageCodes.SwedenCode: return new LanguageSE();
}
return null;
}
}
答案 0 :(得分:0)
在当前的实现中,您不能这样做。
const
是编译已知变量,即使有反射也无法编辑。
唯一的方法是编写一个可以编辑自己的源代码并重新编译的程序。我认为您不想这样做。
但是您可以玩
Thread.CurrentThread.CurrentCulture = new CultureInfo("pt-BR");
如果要保留实施,请将const
更改为static
public class LanguageCodes
{
public static string DenmarkCode = "DK";
public static string SwedenCode = "SE";
}
///
public static string CurrentLanguage
答案 1 :(得分:0)
我今天实际上以这种方式看到了这可能会有所帮助:
private const string someString="my name is {0}";
string newString = string.Format(someString, "Didi");