Quartz.net и распространенный.Ведение журнала - с помощью Log4Net

StackOverflow https://stackoverflow.com/questions/2236772

Вопрос

Я использую Quartz.net в рамках службы Windows.В настоящее время триггер не срабатывает - я хотел бы использовать протоколирование, чтобы выяснить почему.

Я отредактировал свой конфигурационный файл для службы Windows:

<configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />

    <sectionGroup name="common">
      <section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
    </sectionGroup>
</configSections>

<appSettings>
    <!--specific win service settings here-->
</appSettings>

<common>
    <logging>
        <factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4Net">
            <arg key="configType" value="INLINE"/>
            <arg key="configFile" value="c:\sched.log"/>
            <arg key="level" value="INFO" />
        </factoryAdapter>
    </logging>
</common>

<log4net>
    <appender name="EventLogAppender" type="log4net.Appender.EventLogAppender">
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%d [%t] %-5p %l - %m%n" />
      </layout>
    </appender>
    <root>
      <level value="INFO" />
      <appender-ref ref="EventLogAppender" />
    </root>
</log4net>

Моя файловая структура выглядит следующим образом:

C:\CompanyName - корневой каталог для всех проектов
C:\CompanyName\build\bin - Выходной каталог для всех проектов / библиотек классов в моем решении
C:\CompanyName\lib - Куда помещаются сторонние двоичные файлы / библиотеки DLL

В моем проекте службы Windows у меня есть ссылка на Quartz (в папке C:\CompanyName\lib)

Я также добавил ссылку на Common.Ведение журнала.Log4net.dll

Когда я тестирую свое приложение, я получаю следующую ошибку:

Не удалось загрузить файл или сборку 'Общий.Ведение журнала, версия = 2.0.0.0, Культура = нейтральная, PublicKeyToken=af08829b84f0328e' или одна из его зависимостей.Найденное определение манифеста сборки не соответствует ссылке на сборку.(Исключение из HRESULT:0x80131040)":"Общий.Ведение журнала, Версия = 2.0.0.0, Культура = нейтральная, PublicKeyToken=af08829b84f0328e

Это было полезно?

Решение

Я думаю, у вас может быть неправильная версия Common.Ведение журнала.Текущая версия Quartz.Net использует Common.Версия ведения журнала 1.2, а не 2.0.Если вам нужно использовать 2.0, попробуйте либо перекомпилировать quartz.net с версией common logging 2.0, либо попробовать перенаправление сборки вместо этого.

Другие советы

Использование этот пост отладить загрузку сборки, чтобы посмотреть, сможете ли вы точно определить причину несоответствия.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top