私はVS2010でWinFormsプロジェクトとして書いたこのプロジェクトを持っています。私はVS2012でWPFプロジェクトとして書いていません。参照されている DLL ( DailyReport
) があります。内部DailyReport
には と呼ばれるメソッドがありGetUniqueDates()
ます。次のようになります。
public List<string> GetUniquesDates()
{
var dates = new List<string>();
const string query = "SELECT date FROM hdd_local_data_v1_2";
try
{
// Exception here on the connection creation
using (var connection = new SqlConnection(ConnectionStringFile))
{
using (var command = new SqlCommand(query, connection))
{
connection.Open();
using (var reader = command.ExecuteReader())
{
while (reader.Read())
{
for (var i = 0; i < reader.FieldCount; i++)
{
dates.Add(reader.GetValue(i).ToString());
}
}
}
}
}
}
catch (Exception ex)
{
Logger.Error(ex.Message);
}
dates.Sort();
return dates.Distinct().ToList();
}
はConnectionStringFile
コンストラクターで設定され、次のようになります。
ConnectionStringFile = @"Data Source=C:\hdd_data\Rubicon.hdd;Version=3;New=False;Compress=True;";
さて、私の VS2010 WinForms プロジェクトでは、この方法は問題なく機能しました。ただし、VS2012 WPF プロジェクトでは、上記の例外が発生します。例外は次のとおりです。
keyword not supported 'version'.
データベースは SQLite データベースです。キーワードを削除しようとしましたversion
が、例外が発生します。
keyword not supported 'new'.
私の質問は: WPF プロジェクトではなく、WinForms プロジェクトで接続が機能するのはなぜですか? データベース接続を扱う際に変更されたことはありますか?
また、これはパラメータ化されたクエリなどに関する質問ではないことに注意してください。したがって、可能であれば、それらのコメントを自分自身にお願いします。ありがとうございました。