2015-12-21 46 views
0

我正在開發一個小型開源庫,它在Nuget上也是available,沒有依賴關係。現在我想在「調試模式」中僅用於調試目的而使用NLog,但當我在Nuget上發佈新版本時,我不希望它成爲依賴項。如果這是一個合理的方法,那麼最好的辦法是什麼。在發佈模式下刪除NLog的依賴性

感謝

+2

使用[#if DEBUG或條件(「DEBUG」)屬性](http://stackoverflow.com/questions/3788605/if-debug-vs-conditionaldebug)來停止代碼被包含在發佈模式中,並且一個[有條件的項目引用](https://whathecode.wordpress.com/2012/10/07/conditional-project-or-library-reference-in-visual-studio/)在發佈模式中刪除NLog依賴項。 – stuartd

+0

我不認爲你能夠添加或刪除基於配置的項目依賴關係(Release vs Debug)。您可以使用上面提供的解決方案作爲起點。 – Alex

回答

0

您可以使用

Logger.ConditionalTrace("entering method {0}", methodname); 

等。這些將在非調試版本中刪除。 。見NLog 4.0 release post。然後,您可以安全地刪除NuGet包中的依賴項。