我有一个功能,我只想在调试时出现,但不想发布此功能所需的 dll。这可能吗?
我有:
#if DEBUG
using MyAssembly;
#endif
当然,项目正在引用 MyAssembly。我希望 MyAssembly.dll 不以 Release模式发布。那能实现吗?在这方面使用 Conditional("DEBUG") 会有帮助吗?
最佳答案
编译器通常会自动删除不需要的引用,但是:您可以通过更改 csproj 以包含 Condition
来更加明确在 PropertyGroup
上.像这样的东西:
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
<Reference Include="YourReference" />
</PropertyGroup>
(也可以是 <PackageReference>
等)
关于C# 在 #if DEBUG 中使用语句但不运送程序集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44555646/