我怎样才能让它发挥作用?
在
C#
代码中:
if (condition)
{
#define CONSTANT
}
我尝试在项目文件的
<DefineConstants Condition="'$condition'"></DefineConstants>
部分中通过 <PropertyGroup>
执行某些操作。
但是它不会起作用,因为条件将基于我们在程序构建后知道的东西。
不;您的运行时代码 (
if
) 不能影响编译时指令 (#define
)。您需要使用另一种方法。也许使用在运行时计算一次的 static readonly bool
- 最新 .NET 版本上的 JIT 通常会将其视为 const
,并适当地执行死代码删除,使得
if (SomeStaticReadOnlyOrConst)
几乎 与
#if SOME_SYMBOL
相同。