Как я могу использовать 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" у вас есть детали родительского контекста.

Другие вопросы по тегам