2

SQL Server CE 4.0 データベース (.sdfファイル) があり、アプリケーション (WPF) からデータベースに対してクエリを実行しようとすると、次のエラーが発生します。

データベースのバージョンに互換性がありません。これが互換性のあるファイルである場合は、修復を実行します。その他のケースについては、ドキュメントを参照してください。[ データベース バージョン = 4000000、要求バージョン = 3505053、ファイル名 = \?\C:\Database\ShortageReport\MRPDatabase.sdf]

  • SQL Server CE 4 sp1 がインストールされていることを確認しました。
  • Database.Net 4 と vs2012 の接続設定の両方でデータベースを作成しようとしました。
  • Windows 7 64ビットを実行しています
  • 私の接続文字列はapp.config.

SQL Server Compact Toolbox を使用して、コンテキストとマッピングを生成しています。

私のapp.config

<connectionStrings>
    <add name="DatabaseContext" 
         providerName="System.Data.SqlServerCe.4.0" 
         connectionString="Data Source=C:\Database\ShortageReport\MRPDatabase.sdf"/>
</connectionStrings>

何か案は?

4

3 に答える 3

7

バージョン 4.0 System.Data.SqlServerCe.dll ADO.NET プロバイダーへの参照を追加します。

次に、 (4.0) オブジェクトDataContextでクラスを初期化します。SqlCeConnection

using (SqlCeConnection conn = new SqlCeConnection(@"Data Source=C:\projects\Chinook\Chinook40.sdf"))
{
    using (Chinook db = new Chinook(conn))
    {
        var list = db.Album.ToList();
        if (list.Count > 0)
            System.Diagnostics.Debug.Print("It works!");
    }
}
于 2013-05-14T13:04:43.250 に答える
2

次のパスから SqlServerCe.dll 参照を更新し、修正しました

参照パス:

C:\Program Files\Microsoft SQL Server Compact Edition\v4.0\Desktop\System.Data.SqlServerCe.dll
于 2014-12-19T12:50:41.407 に答える
0

同様の問題が見つかり、すべてのフレームワーク SQL Server Compact 3.5 および SQL Server Compact 3.5 SP1 をアンインストールしました。この問題は解決しました。

乾杯、

于 2015-02-23T17:17:52.613 に答える