- PR -

ASP.NET ConnectionStringについて

1
投稿者投稿内容
緋月
会議室デビュー日: 2008/08/22
投稿数: 3
投稿日時: 2008-08-22 08:56
初めての投稿になります。
ただいまASP.NETでWebアプリケーションを作成しているのですが、
マスタメンテナンスのページをGridViewとDetailsViewを使用して作成しているのですが、ConnectionStringの設定が動的に変わるようにしないといけないらしく・・・すごく悩んでいます。
開発環境はWinXp
Microsoft Visual Studio 2005
SQL Server 2005
です。
なにとぞよろしくお願いします。
ひろれい
ぬし
会議室デビュー日: 2006/03/02
投稿数: 486
お住まい・勤務地: 万博開催地
投稿日時: 2008-08-22 09:44
引用:

緋月さんの書き込み (2008-08-22 08:56) より:

初めての投稿になります。
ただいまASP.NETでWebアプリケーションを作成しているのですが、
マスタメンテナンスのページをGridViewとDetailsViewを使用して作成しているのですが、ConnectionStringの設定が動的に変わるようにしないといけないらしく・・・すごく悩んでいます。
開発環境はWinXp
Microsoft Visual Studio 2005
SQL Server 2005
です。
なにとぞよろしくお願いします。


動的に変更する必要があるならそのようにプログラミングすればいいだけだと思うのですが、何に困っているのですか?
さかもと
ぬし
会議室デビュー日: 2004/05/14
投稿数: 586
投稿日時: 2008-08-22 09:45
さかもとと申します。

>>ConnectionStringの設定が動的に

どういうタイミングで動的に変更をしたいのでしょうか?
あるマスタメンテ画面だけは他のDBへの接続の必要があるとか・・・?

web.configファイルに記述されいてるのであれば、書き換えることは可能ですが、web.configの書き換え=アプリケーションの再起動 となってしまいます。

コードの中で接続文字列を都度生成してそれをもとに接続に行くなどは可能だと思いますが、今のご質問内容だけだと要件がよく分かりません。

_________________
------------------------------------------
拝啓、さかもとと申します♪
緋月
会議室デビュー日: 2008/08/22
投稿数: 3
投稿日時: 2008-08-22 10:11
ひろれいさん さかもとさん お返事ありがとうございます。
言葉が足らず申し訳ございません。
ConnectionStringの設定はプロジェクトフォルダとは別の場所にあるXmlを参照にして取得しなければならないのですが、Page_Load内で
Details.ConnectionString="xxxxxxx"←ConnectionStringを持ってくるクラス
Grid.ConnectionString="xxxxxxx"
と設定しても元に戻ってしまうのです…。
やはり、PostBack後やItemCommandイベント時やModeChangedイベント時にそのつど書かなければ無理なのでしょうか…。
どっとねっとふぁん
ぬし
会議室デビュー日: 2005/02/23
投稿数: 935
投稿日時: 2008-08-22 10:31
どうしてもGridViewやDetailsViewのConnectionStringの設定を変更しないといけないのでしょうか?
GridViewやDetailsViewに渡すデータを取り出す部分で必要に応じて設定のことなる場所からデータを取り出すようにして、それをバインドすればいいんじゃないかな?
緋月
会議室デビュー日: 2008/08/22
投稿数: 3
投稿日時: 2008-08-22 10:46
どっとねっとふぁんさん お返事ありがとうございます。
どうしても変更しなければならないらしいのです・・・。
そして、皆様のおかげで何とかできました。
ConnectionStringにダミーの値を入れてから、
Page_Load部分で
If IsPostBack = False Then
Details.ConnectionString="xxxxxxx"←ConnectionStringを持ってくるクラス
Grid.ConnectionString="xxxxxxx"
    Else
Details.ConnectionString="xxxxxxx"←ConnectionStringを持ってくるクラス
Grid.ConnectionString="xxxxxxx"
でなんとか変更できるようになりました。
お騒がせして申し訳ありませんでした。
また何かあったらよろしくお願いします。
1

スキルアップ/キャリアアップ(JOB@IT)