说明:此处仅仅列了两个方案,方便自己记忆,请勿拍砖。
1.采用传统的资源文件方式定义的语言设计方案。具体参考微软MSDN。
2.轮询方式处理。具体实现如下。
1)数据库或文件设计两列:Name1;Name2;
2)定义取得资源的函数。RES.GetString(string name1_info)
3)凡是涉及到的多语言处理的地方,均如下调用 RES.GetString("你好");
4)RES.GetString函数实现
public static string GetString(string name1_info)
{
if(当前语言=="zh_CN")
{
return name1_info;
}
else
{
//从数据库中取得数据
var str= db.Table.Select(p=>p.Name1==name1_info).FirstOrDefault();
if(str == null)
{
//没有找到值就将当前值写入到数据库中
db.Table.Insert(name1_info,"");
str = name1_info;
}
return str;
}
}
{
if(当前语言=="zh_CN")
{
return name1_info;
}
else
{
//从数据库中取得数据
var str= db.Table.Select(p=>p.Name1==name1_info).FirstOrDefault();
if(str == null)
{
//没有找到值就将当前值写入到数据库中
db.Table.Insert(name1_info,"");
str = name1_info;
}
return str;
}
}
5).在程序运行一段时间后根据数据库的name1去实现name2翻译。