我正在开发一个用于其他应用程序的库,这个库有很多调试和日志语句,感谢NLog。
切换到发布模式时,是否可以排除对NLog.dll的引用?
干杯,
答案 0 :(得分:25)
您可以手动编辑csproj文件,并执行以下操作:
<Reference Include="NLog" Condition="'$(Configuration)' == 'Debug'" />
这只使它在Debug中引用该程序集。我不建议经常这样做,因为当您更改配置时,此行为不会反映在Visual Studio的引用列表中。它在编译时确实有用
答案 1 :(得分:2)
我知道的唯一方法是完全取出引用并通过反射调用程序集。然后,您应该只记录程序集是否加载。
答案 2 :(得分:0)
我想不出一个好方法。除非你为NLog.dll写了一个存根引用。由于您在代码中使用了引用,因此我不知道如何在您的发行版中删除它。
现在可能为时已晚,但将来您可以编写一个类来包装NLog.dll,然后在一个地方更改它,这样它就不会真正登录发布版本。或者有某种旗帜。
答案 3 :(得分:-1)
如果您确定不会从该DLL使用任何代码,则没有理由删除引用。在这种情况下,您只需删除DLL。
答案 4 :(得分:-1)
你为什么要那样做?
如果要停止记录,可以以编程方式关闭记录。性能受到的影响微乎其微。 (即使在记录交叉过程时,我也很成功地使用NLog。)
否则,您需要按照上述描述进行包装。
-Scott