@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

web.configでのDBの設定について

投稿者投稿内容
みゆき
会議室デビュー日: 2006/09/09
投稿数: 9
投稿日時: 2006-10-04 21:54
こんばんは。
みゆきです。

asp.net2.0(言語VB)で行っています。
web.configに以下の用にDBの接続文字列を指定しています。
<configuration>
<appSettings/>
<connectionStrings>
<add name="aaa" connectionString="Data Source=(local);Initial Catalog=aaa;User
ID=aaa;Password=aaa" providerName="System.Data.SqlClient"/>
</connectionStrings>


そこでこのようにdbに対するテーブルの設定を行いたいと思っているのですが、行うことは可能でしょうか?

現状Global.asaxの Sub Session_Start(ByVal sender As Object, ByVal e As EventArgs)にテーブルの名前をセッション
情報として格納しているのですが、web.configにDB系の情報を格納したいと思っています。

アドバイスの程をどうかよろしくお願いします。
囚人
ぬし
会議室デビュー日: 2005/08/13
投稿数: 1019
投稿日時: 2006-10-04 22:05
テーブルの名前ってそんな頻繁に変わらないから(というか全く変わらないから)、直にソースに書いてもいいと思うんですけど…。
_________________
囚人のジレンマな日々
みゆき
会議室デビュー日: 2006/09/09
投稿数: 9
投稿日時: 2006-10-05 00:09
こんばんは。

みゆきです。

囚人様、さっそくのご返答ありがとうございます。

その通りなのですがどうしても行いたいので。

また、もしセッション変数等も格納できるのであれば
一緒に格納したいと思っていました。
べる
ぬし
会議室デビュー日: 2003/09/20
投稿数: 1093
投稿日時: 2006-10-05 00:33
設定ファイルにテーブル名を書いておきたいってことです?
web.configのappSettingsに書くことはできますよ。ConfigurationManagerで取得できるようになります。
みゆき
会議室デビュー日: 2006/09/09
投稿数: 9
投稿日時: 2006-10-05 00:49
みゆきです。

べる様。
お早いお返事ありがとうございます。
ちょっと今できる環境はなくて試せませんが、

べる様のヒントを元にいいサイトを見つけました。
http://www.jurapun.com/Tutorial/CSharp/WindowsAppConfig.shtml

この事をおっしゃっているのですよね?
囚人
ぬし
会議室デビュー日: 2005/08/13
投稿数: 1019
投稿日時: 2006-10-05 00:58
引用:

べる様のヒントを元にいいサイトを見つけました。
http://www.jurapun.com/Tutorial/CSharp/WindowsAppConfig.shtml

この事をおっしゃっているのですよね?


構成ファイルに値を追加するのはその通りです。

後、興味で訊きたいのですが、
引用:

また、もしセッション変数等も格納できるのであれば
一緒に格納したいと思っていました。


とはどういう意味でしょうか?
セッションに格納する値はその名の通り「セッションごとに持たせる値」です。
構成ファイルに書くのは「アプリケーション単位で持たせる値」です。しかも、できれば外出しにしておきたい値です。

先の投稿でも述べましたが、テーブル名は不変の筈ですし、ましてやセッションに入れるなど妙です。
セッションに入れるという事は「ユーザーごとにテーブル名が変わる」という事態を想像するのですがどうなのでしょう。もちろん有り得なくもないでしょうけども。

「セッションに格納すべき値」「構成ファイルに書いておく値」「コードに定数として持たせてよい値」というのは区別されているのでしょうか?

_________________
囚人のジレンマな日々
べる
ぬし
会議室デビュー日: 2003/09/20
投稿数: 1093
投稿日時: 2006-10-05 04:18
引用:
べる様のヒントを元にいいサイトを見つけました。
http://www.jurapun.com/Tutorial/CSharp/WindowsAppConfig.shtml

この事をおっしゃっているのですよね?

appSettingsの記述方法・取得方法については同じですがWEBアプリの場合はこっちですね
#WebConfigurationManagerってあったんだ。

引用:
また、もしセッション変数等も格納できるのであれば
一緒に格納したいと思っていました。

セッション変数のキーの名前を設定ファイルに持ちたいということでしょうか。
たとえばSession["UserInfo"]の"UserInfo"を以下のように設定にもつ、と。
<add key="UserInfoSessionName" value="UserInfo" />
でもこうしても結局キー名(この例のUserInfoSessionName)はソースに直書きになるんですよね。
どっとねっとふぁん
ぬし
会議室デビュー日: 2005/02/23
投稿数: 935
投稿日時: 2006-10-05 10:53
セッションをどう使っているかにもよるのですが、場合によってはセッションの代わりに
プロファイルを使う、という手もあるかなぁ、と思います。
これならどういうキーを利用するかはweb.configに書くことになりますし、データは
データベースに格納されます。

テーブルの件はO/Rマッピングツールがやってくれることを考えてるのかなぁ、とも
思いました。
その手のツールを調べてみるのもいいかもしれません。

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