我使用以下方法創建數據庫文件。錯誤消息'此操作系統不支持指定的區域設置。'
public bool CreateDatabaseFile()
{
try
{
Stream file = File.Create(DBPath);
file.Close();
return true;
}
catch (Exception)
{
return false;
}
}
但是,當我打電話
public void CreateDatabaseStruct()
{
var queries = new List<string>
{
"create table contacts (\"name\" nvarchar,\"emails\" nvarchar);",
"create table errors (\"code\" int, message nvarchar);"
};
foreach (string query in queries)
{
var con = new SqlCeConnection(connectionString);
con.Open();
var cmd = con.CreateCommand();
cmd.CommandText = query;
cmd.ExecuteNonQuery();
con.Close();
}
}
返回
指定的語言環境不支持此操作系統上[LCD - 1]。
我該如何解決這個問題?
UPDATE
連接字符串:
public static readonly string DBPath = "db.sdf";
public static readonly string connectionString = String.Format("Data Source={0}; Password=...", DBPath);
問題可能與您的連接字符串有關。你可以發佈它,也可以說你正在運行的是什麼(Windows Mobile或常規Windows)? – MusiGenesis 2012-01-10 14:32:02
你可以嘗試通過調試器運行它。查看哪個查詢失敗。另外,我注意到你沒有在你的'errors'表中的'message'列中加引號。這可能不是問題,因爲我不相信這是一個關鍵字,但只是想知道爲什麼你省略了該列的引號。 – 2012-01-10 16:54:45
@MusiGenesis:在正常的窗戶上。連接字符串現在已發佈。看看我的更新。 – Jack 2012-01-10 18:07:01