私が開発しているアプリケーションでは、テーブル アダプターの接続が Settings.settings ファイルに保存されている接続文字列にリンクされている、厳密に型指定されたデータセットを使用しました。開発を開始した時点では、設定ファイルに示されている接続文字列データ ソースは、ラップトップのローカル フォルダーです (例: C:\my laptop\my app\database\db.accdb)。すべてが正常に機能しています。
次に、アプリケーションをユーザーにテストしたいと思います。既にデータベース (具体的には MS Access) を共有ドライブに配置し、設定ファイルの接続文字列データ ソースを正しいパス (例: S:\shared drive\the app\database\db.accdb) に更新しました。 . ソリューションを構築した後、exeファイルのみを送信します(以前の経験から、これは機能するためです)。
問題は次のとおりです。exe ファイルを実行するたびに、アダプターは新しい接続文字列 (例: S:\共有ドライブ\アプリ\データベース\db.accdb)。新しい接続 (S:\...) をシミュレートするためにラップトップに仮想ドライブを既に作成しており、使用する接続文字列 (古いものまたは新しいもの) に関係なく、アプリはラップトップで動作します。
私がすでに試したこと:
- データセットの Build Action プロパティをコンパイル (エラーが発生するためビルドできません) および埋め込みリソースに変更しましたが、それでも機能しません
- Settings.settings ファイルのビルド アクション プロパティをコンパイルするように変更し (当然のことながら、エラーが発生するためビルドできません)、埋め込みリソースに変更しましたが、それでも機能しません。
ここで何が欠けていますか?設定を更新してソリューションを再構築したにもかかわらず、ユーザーに送信された exe ファイルが新しい接続文字列に更新されないのはなぜですか?