- - PR -
クラスライブラリからWeb.configファイルの値取得について
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-02-04 11:15
現在、クラスライブラリの、あるクラスからWeb.configファイル(ASP.NET)の値を 取得しようと思っているのですが、それは可能なのでしょうか? Webアプリからの呼び出しの様に記述する方法だとうまくいきません。 string dbConnectString = ConfigurationSettings.AppSettings["DBConnString"]; ※NULLが返ってきます。 不可能なことなのでしょうか? ご存知の方よろしくお願い致します。 | ||||
|
投稿日時: 2004-02-04 11:40
クラスライブラリを呼び出しているプログラムは何ですか? もしかして、このスレッドで出てきたexeプログラムですか? ASP.NETでないアプリケーションからクラスライブラリを呼び出していたら、この手段ではNGでしょう。 (逆に言えば、ASP.NETのアプリケーションからクラスライブラリを呼び出していたら、この手段でOKですが。) | ||||
|
投稿日時: 2004-02-04 12:01
お世話になります。
>クラスライブラリを呼び出しているプログラムは何ですか? >もしかして、このスレッドで出てきたexeプログラムですか? そうです。 Web.configファイルから固定値として取得しようと試みたのですが、 難しそうですね。 Webアプリとの連携というのは、そう簡単ではないんでしょうね。 | ||||
|
投稿日時: 2004-02-04 12:15
「連携」をどうとらえるか、だと思います。 ここで、WebアプリとWinアプリを同じPCで開発していると思いますが、違うPCで開発してみてください。そうすると、(おそらく)C:\Inetpub\wwwroot\Applicationディレクトリにあるweb.configにアクセスできなくなりますよね。すると、今考えていらっしゃる「連携」の基準が崩れるでしょう。 | ||||
|
投稿日時: 2004-02-04 12:27
ちなみに補足。
たとえば BATCH.exe という実行ファイル(から呼ばれたクラスライブラリ)で、
という形で固定値を取りたければ、BATCH.exe用のアプリケーション構成ファイル(BATCH.exe.config)をASP.NET側のWeb.configとは別に用意する、という手段もあります。 もちろん、ASP.NET側のWeb.configを読むわけではありません。 つまり、ASP.NET側のWeb.configとは別に管理する必要があるので、固定値の情報が分散するリスクはあります。 あと、ASP.NETのアプリケーションとBATCH.exeを、必ず同じPC内で動かすなら、他にも方法が一応あります。 が、こちらのリスクはもっと大きく、気軽に使っていい手段ではないので、敢えて触れません。 [ メッセージ編集済み 編集者: ぢゃん♪ 編集日時 2004-02-04 12:49 ] | ||||
|
投稿日時: 2004-02-04 13:24
ご回答ありがとうございます。 まだまだ勉強不足の点が多くてすみません。 お手数かけました。 今までのアドバイスを参考に、もう一度 どのような仕様にするのか再検討してみたいと思います。 ありがとうございました。 | ||||
|
投稿日時: 2004-02-04 14:11
ちなみに私のところでは。。。
APIからC:\Documents And Settings\All Usersのディレクトリを得、Application Dataディレクトリの下にコーポレイト名、アプリケーション名のディレクトリを作って、そこにXMLシリアライザで情報を保存しています。 もちろん、誰でも見られる情報になるので、暗号化するなど、セキュリティ面の強化は必要です。 |
1