最近、すべてのセッションチェックをglobal.asaxに統合しました。これは正常に機能しますが、ページがfilehandler.ashxを呼び出して画像を取得するときにそこに配置したため、セッションのnull参照エラーが発生し続けます(ただし、それを呼び出します)。
try / catchを回すと画像が読み込まれますが、これは明らかに良い解決策ではありません。
void Application_PostAcquireRequestState(object sender, EventArgs e)
{
try
{
HttpContext context = HttpContext.Current;
if (context.Session["tid"] == null) //Null Reference here
{
理想的には、ファイルハンドラーにねじ込まれないポストバックまたは最初のロードで発生するイベントを探しています。以前のようにmaster_pageinitにいつでも入れることができない場合は(これは悪い習慣ですか?)、それはうまく機能しているように見えたので、私は推測します。global.asaxがより優れたソリューションになると思いました。
次に何を試すべきかについて何か考えはありますか?
私がこれまでに試したイベント。
Application_AcquireRequestState
Application_PostAcquireRequestState
Application_PreRequestHandlerExecute
Application_PreSendRequestContent