0

ここでの私の目標は、セッションを適切に割り当て、そのセッションに格納されている値を取得することです。

ユーザーが私の最初のページであるDefault.aspxページにアクセスしたときに、コードビハインドでセッションを設定しました。

HttpContext.Current.Session ["permissions"] = "Super";

ただし、別のファイルのデータアクセスクラスでこのセクションにアクセスできません。私は何か間違ったことをしていますか、または誰かがC#クラスからすでに設定されたセッションにアクセスする正しい方法を知っていますか?

同じ構文を使用してセッションにアクセスしようとしています。Stringpermission=HttpContext.Current.Session ["permissions"]。ToString();

4

1 に答える 1

1

私はあなたがいつでもこの状況を無効にすることができるとかなり確信しています。あなたがやろうとしていることは、良いデザインプリンシパルとは見なされません。

できることは、CurrentUserやその役割をデータクラスに渡すことで、そのクラスにカスタムプロパティを設定することです。そのクラス内で、このプロパティの値を使用してユーザーの役割を処理できます。

これがあなたを助けるならば、私に知らせてください。

コードサンプルについては、いつでもこのSOの質問を見ることができます

ASP.NETの任意のクラスからセッション変数にアクセスするにはどうすればよいですか?

于 2012-07-25T19:17:39.983 に答える