Запрос не доступен в этом контексте - PullRequest
106 голосов
/ 25 марта 2010

Я использую интегрированный режим IIS 7 и получаю

В этом контексте запрос недоступен

когда я пытаюсь получить к нему доступ в функции, связанной с Log4Net, которая вызывается из Application_Start. Это строка кода, которую я

if (HttpContext.Current != null && HttpContext.Current.Request != null)

и создается исключение для второго сравнения.

Что еще можно проверить, кроме проверки HttpContext.Current.Request для null ??


Похожий вопрос выложен @ Запрос недоступен в этом контексте, исключение при запуске mvc на iis7.5

но соответствующего ответа там тоже нет.

Ответы [ 11 ]

0 голосов
/ 17 августа 2010

сделать это в global.asax.cs:

protected void Application_Start()
{
  //string ServerSoftware = Context.Request.ServerVariables["SERVER_SOFTWARE"];
  string server = Context.Request.ServerVariables["SERVER_NAME"];
  string port = Context.Request.ServerVariables["SERVER_PORT"];
  HttpRuntime.Cache.Insert("basePath", "http://" + server + ":" + port + "/");
  // ...
}

работает как шарм. this.Context.Request есть ...

this.Request специально генерирует исключение на основе флага

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...