我今天尝试将它们一起使用,但版本不匹配,因为它正在寻找 NLog v1。
Common.Logging 是否支持 NLog v2?
如果没有,有谁知道是否可以安全地使用程序集版本重定向?
我今天尝试将它们一起使用,但版本不匹配,因为它正在寻找 NLog v1。
Common.Logging 是否支持 NLog v2?
如果没有,有谁知道是否可以安全地使用程序集版本重定向?
您可以简单地在 app.config 或 web.config 中执行程序集重定向,并且 CommonLogging 将通过使用 NLog2 作为日志框架与 NLog2 正常工作:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="NLog" publicKeyToken="5120e14c03d0593c" culture="neutral" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
唯一的问题是如果您想使用 CommonLogging 2.0 将 NLog 消息重定向到其他一些日志框架,那么就会出现兼容性问题。但这是一个非常不寻常的用例。
如果您使用 Nuget 获取Common.Logging.NLog
库,该包将下载 Common.Logging v2.0 依赖项。如果你使用 Nuget 更新Common.Logging
,它会更新到 v2.1.1.0,这样可以防止Could not load file or assembly 'NLog, Version=1.0.0.505
错误。