• 締切済み

ASP.NETのGlobal.asaxについて

Global.asaxにApplication_BeginRequestを設定し、 各ページの呼び出し時にサーバのサービス提供時間内であるかどうか調べて、サービス提供時間外ならばトップページへ転送するように設定しています。 今回、管理者フラグをセッションにもち、 もし管理者ならばサービス提供時間外でもトップページへ 転送されないように改善しようと思うのですが、 Application_BeginRequest内でセッション情報を取得しようとしても、 このコンテキスト内でセッション状態は利用できません。 と言われ、セッション情報の管理者フラグを取得できません。 この場合、どのようなことをすれば実現できるのか、 ご存知の方いらっしゃいませんでしょうか? 素人であまり詳しいことはわかっておりいませんが、 助言お願いいたします。 言語はVB.NETです。

みんなの回答

  • todo36
  • ベストアンサー率58% (728/1234)
回答No.1

共通のPageクラスを作って、すべての頁はそのクラスの継承とすると何かと便利です //共通の頁クラス public class MyPage : System.Web.UI.Page { protected override OnInit(略) { //サービス提供時間外の処理 } } //各ページファイル //System.Web.UI.PageをmyPageに書き換える //public WebForm1 : System.Web.UI.Page public WebForm1 : myPage { }

masa4_net
質問者

お礼

todo36さん回答ありがとうございます。 共通の頁クラスというものをもっと早く知っていればと思います。 今現在、すでに100以上の頁が存在し、 各頁のソースの修正・テストなどを考慮すると、 今回は、この方法は厳しいと思ってしまいます。 今後の新規開発の際には参考にさせていただきたいと思います。

関連するQ&A

専門家に質問してみよう