Как правильно настроить Ninject.Extensions.Logging.Log4Net в моем проекте MVC3

Я пытаюсь правильно использовать Ninject, чтобы ввести log4net вход в мое приложение MVC3. Я используюNinject.MVC3 пакет, поэтому у меня есть класс NinjectMVC3, который автоматически расширяет метод App_Start и содержит метод RegisterServices, который связывает все зависимости. У меня также естьNinject.Extensions.Logging.Log4Net пакет, но я не знаю, как его использовать. Я уже знаю, как настроить log4net в моем web.config, но не знаю, как использовать это расширение для DI.

Я прочитал все следующие статьи / посты, но ни одна из них, кажется, не определяет, как правильно настроить проект для регистрации DI.

Вhttp://dotnetdarren.wordpress.com/2010/07/29/logging-in-mvc-part-4-log4net/Даррен предлагает отличную статью, но, похоже, не имеет отношения к DI (по крайней мере, я этого не вижу).

ВИспользование Ninject для заполнения зависимости Log4NetRemo Gloor заявляет здесь, что расширения должны предоставлять все, что необходимо для реализации, но он не показывает код того, как его создать.

Документация для ninject.extensions.logging по адресуhttps://github.com/ninject/ninject.extensions.logging/wiki/Using в лучшем случае очень ограничен. Я перечитывал его много раз и до сих пор не вижу, как использовать привязку привязки в классе NinjectMVC3 или конкретные примеры того, как вызвать регистратор из моего класса контроллера, например.

В самой многообещающей статье Moosaka предлагает отличный код наNinject.Extensions.Logging.Log4net непредвиденное поведение, но когда я пытаюсь это сделать, я получаю ошибку компиляции в LoggerFactory вILogger logger = new Logger(type); заявляя, что «не может получить доступ к защищенному конструктору« Logger »здесь». Кроме того, он заявляет: «Уберите весь этот беспорядок в отдельную библиотеку классов». Означает ли это как отдельный проект?

Я просто заблудился во всех отличающихся опциях и датированных постах и хотел бы получить любые отзывы о том, как использовать Dependancy Injection с Ninject и Log4Net в моем проекте MVC3. Кроме того, если это имеет значение, весь мой код Ninject находится в моем доменном проекте, но регистрация должна осуществляться как из домена, так и из веб-проекта (и проверялась в моих модульных тестах). Любая помощь приветствуется.

Ответы на вопрос(1)

Ваш ответ на вопрос