visualstudio中的条件引用-如何定义自定义变量

本文关键字:定义 变量 自定义 何定义 条件 引用 visualstudio | 更新日期: 2023-09-27 18:20:28

我有一个项目应该引用其他项目这样做:

 <Reference Include="referencedDll" Condition=" '$(Configuration)' == 'Debug' ">
  <HintPath>..'Resources'External DLLs'referencedDll.dll</HintPath>
</Reference>

这样可以很好地复制dll,以防它处于调试状态。但我希望它不依赖于调试/发布,而是其他一些可变定义

类似于:

<Reference Include="referencedDll" Condition=" '$(ReleaseType)' == 'INTERNAL_RELEASE' ">
  <HintPath>..'Resources'External DLLs'referencedDll.dll</HintPath>
</Reference>

我没有找到如何定义ReleaseType变量?+有没有办法将同一个变量用于代码中的#if和条件引用?

我看到了使用的选项

 Condition=" $(DefineConstants.Contains('INTERNAL_RELEASE'))"

但它并没有像我预期的那样工作

我不完全确定在Visual studio中是否有这样的方法。如果直接从msbuild运行生成,则可以使用/P:ReleaseType=INTERNAL_RELEASE。

在我的项目中,我最终更改了Configuration属性,而不是将其作为Debug和Release,我有更多的值,如DEV、QA、STAGE等。

visualstudio中的条件引用-如何定义自定义变量