2011-12-12 66 views
1

我有一个用C#编写的Windows窗体应用程序,它运行在具有SQL compact 4数据库的Windows XP机器上。操作系统语言是简体中文。 我正面临一个奇怪的例外。 “指定的区域设置未安装在本机上,请确保安装了相应的语言包。LCID 1053” 为什么? 该应用程序在所有其他配置/语言上都可以正常工作。SQL compact 4异常

回答

2

这是瑞典的语言环境。您可以通过修改连接字符串更改地区:

http://msdn.microsoft.com/en-us/library/ms174034.aspx

所以它会是这样的

conString = “...;区域设置标识符= XXXX; ...”

其中XXXX可以在此表中找到:http://msdn.microsoft.com/en-us/goglobal/bb964664

+0

感谢您的回答!但我仍然得到相同的错误... – Francesco

+0

抛出的错误在哪里?你能显示该部分的源代码吗? (如果它是连接字符串,当然不要发布pwd) – MatthewMartin

1

我在win8的4.0版本创建了同样的问题自卫队与它并不在XP中工作。

然后我用以下C#代码修复了数据库,现在它在两个操作系统中都可以使用。

SqlCeEngine se = new SqlCeEngine(@"Data Source=|DataDirectory|\mydatabase1.sdf;Persist Security Info=False;"); 
se.Repair(@"Data Source=|DataDirectory|\mydatabase1.sdf;Persist Security Info=False;", RepairOption.RecoverAllOrFail);