项目参考条件包含多个条件

Posted

技术标签:

【中文标题】项目参考条件包含多个条件【英文标题】:Project reference conditional include with multiple conditions 【发布时间】:2011-09-12 19:35:08 【问题描述】:

这是我的 csproj 文件中的一个 sn-p:

<ProjectReference Include="..\program_data\program_data.csproj" Condition="'$(Configuration)'=='Debug'">
      <Project>4F9034E0-B8E3-448E-8794-CF9B9A5E7D46</Project>
      <Name>program_data</Name>
</ProjectReference>

我想要为多个构建配置添加program_data.dll,例如,发布和调试。

我尝试了以下操作

Condition="'$(Configuration)'=='Debug' || '$(Configuration)'=='Release'"

但 Visual Studio 对此感到窒息。

有什么办法可以做到这一点,还是我必须为每个构建配置单独设置一个 &lt;ProjectReference&gt;

【问题讨论】:

【参考方案1】:

你应该使用Or,而不是||

Condition="'$(Configuration)'=='Debug' Or '$(Configuration)'=='Release'"

【讨论】:

谁能想到?谢谢,我试试看。 @Charlie - 我已链接到 MSBuild 条件文档。 我注意到了,谢谢。我发现 MSDN 库可能很棘手,除非您知道 什么 您正在寻找。 如果您希望您的参考工作同时用于发布和调试,并且您没有任何其他配置,通过删除“条件”属性使您的 ProjectReference 无条件更简单。 @Oleg 我想他们不仅仅是DebugRelease,否则就不需要这个问题了。我有一些解决方案也有Debug MONORelease MONO

以上是关于项目参考条件包含多个条件的主要内容,如果未能解决你的问题,请参考以下文章

如何根据多个条件并使用 linq 从通用列表中删除项目

更新数组中的单个项目,其中多个条件适用于任何数组项目

oracle 中,计算多个数值项目的和,再将求出的值作为条件项目判断。请教关键字是啥?

Activiti排他网关上的多条件组合判断

如果满足多个条件,如何使用 If 语句计算数字?

过滤现有项目组,使其仅包含符合某些条件的文件