私は VS2010 で、2007 Access データベースを使用する VB.NET アプリケーションを作成しましたMenuDB.mdb
。開発中、すべてが順調でした。
公開した今、何らかの理由でアプリがデータベースに接続していないため、奇妙なエラーが発生しています。
アプリケーションをインストールして実行しましたが、開くとすぐに次のエラーが発生します。
System.Data.OleDb.OleDbException (0x80004005): Could not find file
'C:\Users\Administrator\AppData\Local\Apps\2.0\Data\OV86PXJA.K3R\8575R5AY.95Z\menu..tion_0d4fa454d69e8e6b_0001.0000_8340d263807cbb71\Data\MenuDB.accdb'.
アプリケーションをデータベースに関連付ける方法に問題があることはわかっていますが、どの方法が正しいかわかりません。ソリューション エクスプローラーで、ビルドの種類MenuDB.accdb
を「コンテンツ」に変更しました (以前は埋め込みリソースでした)。しかし、どちらの方法でも機能しません。私の App.config には、次の接続文字列があります。
connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\MenuDB.accdb"
アプリケーションを展開するときに、データベースがどこにインストールされていても、アプリケーション フォルダーに格納する必要があります。どうやってやるの?
編集
動作する限り、データベースをターゲットマシンのどこかに自分で貼り付ける必要があるような方法で展開してもかまいません。