2011-07-04 9 views

答えて

7

Quartz.net 1.0.3を使用していると仮定します。

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

    ... 

    <common> 
     <logging> 
     <factoryAdapter type="Common.Logging.NLog.NLogLoggerFactoryAdapter, Common.Logging.NLog"> 
     <arg key="configType" value="FILE" /> 
     <arg key="configFile" value="~/NLog.config" /> 
    </factoryAdapter> 
     </logging> 
    </common> 

</configuration> 
:次に、あなたは、アプリケーションの設定ファイルに以下の設定を追加する必要が

Common.Logging
Common.Logging.NLog
NLog

を:あなたは、次のアセンブリへの参照を追加する必要があります

外部のNLog.configファイルを使用しています。

Quartz.netがCommon.Loggingバージョン1.2を使用しています。

+0

すごくうまくいった!ありがとう。将来の読者のためのメモ。すべてのDLLが正しいフォルダにコピーされることを確認します。 –

+1

誰かが自分のプロジェクトでCommon.Loggingバージョンを1つだけ望む場合、私は風水と同じようにQuartzを2.0で再コンパイルしました。ソースをダウンロードし、バイナリを置き換えて再コンパイルしてください。 – Kjellski

2

これは確かにconfigディレクティブの使用ですが、既存のnlog設定があり、quartzロギングを単にドロップしたい場合は不要です。

単に、nugetから適切なバージョンの「Common.Logging.NLog」を参照して通常どおりロギングを設定し、最後にこれを追加します。

var config = new NameValueCollection(); 
var adaptor = new NLogLoggerFactoryAdapter(config); 
Common.Logging.LogManager.Adapter = adaptor; 

石英ロギング(およびすべての共通のロギング)のすべて既存のnlog設定に転送されます。

関連する問題