Как я могу использовать Castle Windsor Factory для создания нескольких именованных регистраторов?
Этот парень задал почти тот же вопрос.
В настоящее время я использую средство регистрации замка в приложении MVC и загружаю в настоящее время единственный именованный регистратор в global.asax, который не позволяет легко разделить несколько файлов журнала с одинаковым уровнем, не получая одинаковые записи журнала в несколько файлов., LoggerToMatch - это то, что мне нужно для фильтрации, у меня также есть пользовательский рендер log4net, который я использую в настоящее время с одним именованным регистратором, и мне нужно, чтобы разные именованные регистраторы использовали разные пользовательские визуализации.
Я думаю, что ответ Кшиштофа здесь - это то, что я ищу, но я не знаю, что это за параметры k,c.
Если бы у меня был конфигурационный файл log4net, который выглядел так, как бы я повторно зарегистрировал оба именных регистратора с помощью Windsor? До сих пор я говорил Виндзору об одном именованном регистраторе при регистрации объекта.
<logger name="Logger1">
<level value="INFO" />
<appender-ref ref="ErrorRollingFile1" />
<appender-ref ref="TraceRollingFile1" />
<appender-ref ref="InfoRollingFile1" />
</logger>
<logger name="Logger2">
<level value="INFO" />
<appender-ref ref="ErrorRollingFile2" />
<appender-ref ref="TraceRollingFile2" />
<appender-ref ref="InfoRollingFile2" />
</logger>
1 ответ
UsingFactoryMethod((k, c)
Использование FactoryMethod дает вам возможность получить доступ к k=IKernel и c=CreationContext.
через "k" вы можете явно получить доступ и разрешить компоненты из контейнера (IKernel является "ядром / ядром" контейнера)
через "c" у вас есть детали родительского контекста.