2011-06-21 23 views
3

ASP.Netセッションの状態でSQL Serverを使用しています。しかし、私は実行時に接続文字列を取得することしかできないため、web.configファイルに格納することはできません。通常は次のようになります。SQLセッション状態サーバーの動的接続文字列

<sessionState 
      mode="SQLServer" 
      sqlConnectionString="data source=127.0.0.1;user id=<username>;password=<strongpassword>" 
      cookieless="false" 
      timeout="20" 
    /> 

実行時にその接続文字列を設定するにはどうすればよいですか? (つまり、ウェブアプリがスピンアップした後)

答えて

1

Application_Startのイベントでそれを調べたことがありますか?Global.asax?これはそのようなものを設定する論理的な場所のようです。 MSDN's documentationから

:ASP.NETアプリケーション における最初のリソース(ページなど )が要求されるときに呼び出され

。 Application_Start メソッドは、アプリケーションのライフサイクル の間に1回だけ呼び出されます。 は、このメソッドを使用して キャッシュにデータをロードし、静的値を初期化するなどの起動 タスクを実行できます。

アプリケーションの起動中に静的データのみを設定する必要があります。 インスタンスデータを設定しないでください。 は、 が作成されたHttpApplicationクラスの最初のインスタンス にのみ使用可能です。

+0

ありがとう阿部私はそれを設定する場所を知っていただけで何を設定するのか分からない。私はApplication_Startがおそらくそれを設定する最も良い場所であることに気付くだけで、何を上書きするかを知る必要があります。 – Guy

1

System.Web.SessionStateの中のどこかにその文字列を設定するといいと思います。うまくいけば、適切な場所に行くのに役立ちます。申し訳ありませんが私はまだ自分自身を理解しようとしている、より良い答えを与えることはできません。私がすれば、私はあなたに知らせるでしょう。 GL