加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C#检查一个属性是否在csproj中开始/结束

发布时间:2020-12-15 06:17:45 所属栏目:百科 来源:网络整理
导读:我在我的csproj文件中设置一些可以针对不同框架版本的配置.理想情况下,我想要配置“Debug – 3.5”,“Debug 4.0”,“Release 3.5”和“Release 4.0”. 在我的csproj文件中,我想做一些像下面这样的事情: PropertyGroup Condition=" '${Configuration}' ends
我在我的csproj文件中设置一些可以针对不同框架版本的配置.理想情况下,我想要配置“Debug – 3.5”,“Debug 4.0”,“Release 3.5”和“Release 4.0”.

在我的csproj文件中,我想做一些像下面这样的事情:

<PropertyGroup Condition=" '${Configuration}' ends with '3.5' ">
    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
</PropertyGroup
<PropertyGroup Condition=" '${Configuration}' ends with '4.0' ">
    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
</PropertyGroup
... check for "starts with Debug" to define Optimize etc.

但是,我不知道如何检查${Configuration}是否以特定的字符串开始/结束.有没有办法做到这一点?

编辑:下面的标记答案指向我正确的方向,这导致我去:

<PropertyGroup Condition="$(Configuration.Contains('Debug'))">
    ... setup pdb,optimize etc.
</PropertyGroup>
<PropertyGroup Condition="$(Configuration.Contains('3.5'))">
    ... set target framework to 3.5
</PropertyGroup>
... and so on for Release and 4.0 variations

解决方法

MSBULD属性只是一个网络字符串,并有 property functions可用.
Condition="$(Configuration.EndsWith('3.5'))"

应该工作

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读