代码之家  ›  专栏  ›  技术社区  ›  Razor

Visual Studio-如何在发布模式下删除引用

  •  19
  • Razor  · 技术社区  · 16 年前

    我正在开发一个用于其他应用程序的库,由于NLog,这个库有很多调试和日志记录语句。

    干杯

    5 回复  |  直到 9 年前
        1
  •  25
  •   Sander Rijken    16 年前

    您可以手动编辑csproj文件,并执行以下操作:

    <Reference Include="NLog" Condition="'$(Configuration)' == 'Debug'" />
    

    这仅使其在调试中引用该程序集。不过,我不建议经常这样做,因为当您更改配置时,VisualStudio中的引用列表中不会反映这种行为。不过,它在编译时确实有效

        2
  •  2
  •   Lou Franco    16 年前

    我知道的唯一方法是完全取出引用并通过反射调用程序集。然后,您应该仅在程序集加载时记录。

        3
  •  0
  •   wonderchook    16 年前

    我想不出一个好办法。除非您为NLog.dll编写了存根引用。因为您在代码中使用了引用,所以我不明白您如何在发行版中删除它。

    现在可能太晚了,但将来您可以编写一个类来包装NLog.dll,然后在一个地方对其进行更改,这样它就不会真正登录到发布版本中。或者有某种标志。

        4
  •  -1
  •   Mash    16 年前

        5
  •  -1
  •   Scott P    16 年前

    你为什么要这么做?

    否则,您需要如上所述对其进行包装。