Ответ 1
То же самое: Application_Start
. В конце концов это приложение ASP.NET. Для самостоятельных хостинговых услуг вы можете настроить log4net
непосредственно перед запуском хоста.
В моем приложении asp webforms я бы выполнил инициализацию log4net;
log4net.Config.XmlConfigurator.Configure();
на global.asax на Application_Start, чтобы он выполнялся один раз, когда приложение запускается.
Каков правильный способ настройки log4net для IIS, размещенных в WCF-приложениях (в частности, о том, где разместить эту строку, какое событие использовать и т.д.), чтобы log4net инициализировался один раз и нет ненужных инициализаций.
То же самое: Application_Start
. В конце концов это приложение ASP.NET. Для самостоятельных хостинговых услуг вы можете настроить log4net
непосредственно перед запуском хоста.
Я обычно делаю это в конструкторе моего класса сервиса, но я проверяю, уже настроен ли log4net:
if (!LogManager.GetRepository().Configured)
{
// configure log4net...
}
Я думаю, что если вы действительно хотите этого избежать, вам придется написать свой собственный сервис factory и выполнить там конфигурацию.
Добавление:
XmlConfigurator.Configure();
для конструктора каждого из классов обслуживания помогло.