У обработчика события HttpModule AcquireRequestState есть нулевой отправитель - PullRequest
0 голосов
/ 18 декабря 2009

У меня есть HttpModule, что-то вроде этого:

public class MyModule : IHttpModule
{
    public void Init(HttpApplication context)
    {
         context.AcquireRequestState += Context_OnAcquireRequestState;
    }

    private void Context_OnAcquireRequestState(object sender, EventArgs e)
    {
    HttpContext context = ((HttpApplication)sender).Context;
        ... etc
    }
}

Я заметил проблему, возникающую непосредственно после перезапуска пула приложений, в которой значение null передается как параметр sender события AcquireRequestState, и я получаю исключение нулевой ссылки. Через некоторое время проблема, похоже, решается сама собой.

Как это могло произойти?

1 Ответ

1 голос
/ 19 декабря 2009

HttpContext.Current должен быть установлен в потоке обработчика событий инфраструктурой. Попробуйте использовать статический метод доступа вместо отправителя в событии.

...