DOBON.NET DOBON.NETプログラミング掲示板過去ログ

DBのパスを動的に変更

環境/言語:[Win2000 C#.NET .NET Framework2.0 ]
分類:[.NET]

教えてください。

開発環境:Win2000
   VS.NET2005 Standard
   AccessMDB 2003

やりたいこと:
DBのパスを動的に変更

現在の状況:
1.サーバーエクスプローラで、新しい接続を作成。
2.データ(A)メニューより、新しいデータソースの追加。(5テーブル)
3.データソースより、AテーブルをForm1にドラッグ。
 (データセット、データバインディングソース、データアダプタが自動生成)
4.データアダプタ(だっけ、バインディングソースだっけ?)をForm1のデザイン
部に
ドラッグして、データグリッドViewを作成

DBの"c:\XXXXx\aaa.mdb”のパスが違っても動くようにしたいのですが、
どうすればいいのでしょうか?



●できれば、どのDB環境でも動作するように、DBのパスはINIファイルか何かに
保存しておき、動的にConnectionStringsを設定したいのですが、どうすれば
いいのでしょうか?
お世話になります。

■No15283に返信(JUNさんの記事)
自分も勉強がてら調べたり、周りの人に訊いてみました。

ソリューションエクスプローラで Settings.settings を 右クリック
ファイルを開くアプリケーションの選択
XML エディタ を選択して OK
<Setting Name="XXXConnectionString" Type="(Connection string)" Scope="Application">

<Setting Name="XXXConnectionString" Type="(Connection string)" Scope="User">
に変更する。

コード上で、
Properties.Settings.Default.XXXConnectionString = 任意の値;
なおこさん、ありがとうございます。

うまくいきました。
フォームを表示する前に以下のように設定しました。

class main
{
static void Main()
{
Properties.Settings.Default.KokyakuDBConnectionString1 = ";Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\XXXX\\aaa.mdb";
Application.Run(new Form1());
}
}

これができなきゃ先にいけないもので、かれこれ2日間も悩んでいたんです。
教えていただけなければまだまだ悩んでいたと思います。
本当に助かりました。感謝しております。
すみません、解決済み!にチェックするのを忘れました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板