0

現在、クライアント サーバー プロジェクトをセットアップしています。私のサーバー部分は C# WebAPI プロジェクト (net45) です。私のクライアント部分は C# WPF プロジェクト (net45) です。

ロギングには、Common.Logging.NLog32 アダプターで Common.Logging を使用したいと考えています。

最初はサーバー部分で構成しましたが、魅力的に機能しました。WPFアプリケーション用に構成を続けましたが、呼び出し時に失敗し続けます:

LogManager.GetCurrentClassLogger();

または

LogManager.GetLogger("MyLogger");

例外は、 のインスタンスを作成できなかったことを示していますCommon.Logging.NLog.NLogLoggerFactoryAdapter。内部例外は、5120e14c03d0593c の PublicKeyToken を持つバージョン 3.2.0.0 の NLog アセンブリが見つからないことを示しています。

サーバーとクライアントのどちらの場合も、まったく同じ nuget パッケージをインストールしました。サーバー部分は NLog 3.2.1.0 アセンブリ (Common.Logging.NLog32 に付属) を使用しても問題はありませんが、クライアントはロードに失敗し続けます。

動作が異なる理由と、正確な NLog バージョンを手動でロードせずにこの問題を回避する方法はありますか?

4

1 に答える 1

0

まあ、それは奇妙でした...

同僚から、Common.Logging ラッパーなしで NLog を直接使用してみるように依頼されました。私はそうしましたが、すべてが期待どおりに機能しました。

その後、コードを元に戻し、問題を再現して github ページに投稿したいと考えました。そしてそれはうまくいきました、もう問題はありません。

問題を正確に修正したものはわかりませんが、同じ問題に遭遇したすべての人のために: NLog を一度直接使用してみて、その後 Common.Logging でもう一度試してください。

于 2015-05-08T06:40:23.843 に答える