Я обнаружил, что мне необходимо настроить log4net на основе файла относительно физического расположения запущенного веб-приложения ASP.NET.Нам нравится запускать регистратор как можно раньше, поэтому Application_Start
кажется подходящим местом.В IIS6 это работает нормально и работает уже много лет, но теперь мы перешли на IIS7, и это больше не будет работать:
string absolutePath = HttpContext.Current.Request.PhysicalApplicationPath;
, потому что HttpContext.Current недоступен во многих global.asax
(Приложение, сессия) события.Это старые новости, мы все знаем, что это поднимает печально известную Запрос недоступен в этом контексте ошибка .Мы не хотим возвращаться в классический режим.
Теперь вопрос прост: без использования HttpContext
возможно ли найти физическое местоположение экземпляра веб-приложения, работающего в данный момент? *