1

以前のWebフォームアプリケーションを使用してMVCに変換していますが、適切なリソースが見つからないという大きな問題が1つあります。ユーザーのID(web.configで設定されたWindows認証)をキャプチャする機能が必要ですが、global.asaxではセッションにアクセスできないようです(ただし、ID情報は取得できます)。または、コントローラーの基本クラス内で作業しているときは、コンストラクターのhttpContextにアクセスできません(ただし、セッションにはアクセスできます)。

誰かがこの問題の良い解決策を持っていますか?以前のWebフォームには、IDなどに応じて検証とセッション変数の設定を行うマスターページがありました。

4

1 に答える 1

3

このコード行を使用すると、セッションまたはその他のhttpContextベースのエンティティに、すでにインスタンス化されている限り、いつでもアクセスできます。

HttpContext.Current.Session
HttpContext.Current.Request
HttpContext.Current.Server
...etc

ただし、IDに変更を加えてそれらの変更を個別に保存しない限り、セッションに永続化することなく、常にユーザーとIDの情報にアクセスできる必要があります。

HttpContext.Current.User.Identity
于 2009-05-28T18:53:52.807 に答える