2010-12-14 23 views
5

W mojej aplikacji ASP.NET 4.0, mam obsługę zdarzeń dla PreRequestHandlerExecute w global.asax.cs.Sesja ma wartość NULL w PreRequestHandlerExecute

Chcę uzyskać dostęp do danych w sesji. Najczęściej sesja jest zdefiniowana, ale czasami jest zerowa. Czy ktoś może mi wyjaśnić, kiedy jest inicjowany, a kiedy nie jest?

Odpowiedz

4

Sesja nie jest ładowana domyślnie dla każdego typu żądania. Jeśli żądanie dotyczy pliku treści (takiego jak obraz lub arkusz stylów), sesja nie jest ładowana. Zostało to zrobione w celu zmniejszenia obciążenia związanego z przetwarzaniem żądania. Jeśli pracujesz w Generic Handler (.ashx) i chcesz uzyskać dostęp do sesji, to poprowadź program obsługi IRequiresSessionState.

+0

Czy chodziło Ci o IRequiresSessionState, czy jest to coś innego? – Foole

+0

Tak, zawsze się odwracam. –

Powiązane problemy