MSBuild,条件网络运行时

MSBuild,条件网络运行时,msbuild,Msbuild,我有一组工具需要部署在NET3.5或NET4.0上,具体取决于MsBuild条件。目前,我们希望更改这些实用程序的项目文件以处理此问题。 我们意识到我们可以这样做: <TargetFrameworkVersion Condition="">v3.5</TargetFrameworkVersion> v3.5 我们不清楚的是,如何根据条件指定不同版本的NET。condition属性是一个int,返回一个介于1和4之间的数字,根据该值,我们应该针对不同的NET frame

我有一组工具需要部署在NET3.5或NET4.0上,具体取决于MsBuild条件。目前,我们希望更改这些实用程序的项目文件以处理此问题。 我们意识到我们可以这样做:

<TargetFrameworkVersion Condition="">v3.5</TargetFrameworkVersion>
v3.5
我们不清楚的是,如何根据条件指定不同版本的NET。condition属性是一个int,返回一个介于1和4之间的数字,根据该值,我们应该针对不同的NET framework,当然,在app.config中也要更改此属性

<startup>
   <supportedRuntime version="v2.0.50727"/>
</startup>


我想知道处理这类问题的正确方法。

可以在MSBuild文件中一个接一个地给出这样的条件

<TargetFrameworkVersion Condition="$(ConditionProperty) == '1'">v1.1.xxxx</TargetFrameworkVersion>
<TargetFrameworkVersion Condition="$(ConditionProperty) == '2'">v2.0.xxxx</TargetFrameworkVersion>
<TargetFrameworkVersion Condition="$(ConditionProperty) == '3'">v3.5.xxxx</TargetFrameworkVersion>
<TargetFrameworkVersion Condition="$(ConditionProperty) == '4'">v4.0.xxxx</TargetFrameworkVersion>

看来我在这里找到了答案:太棒了!!这就是我要找的
<startup>
   <supportedRuntime version="v2.0.50727"/>
</startup>
<XmlUpdate XmlFileName="app.config"
           XPath="//startup/supprtedRuntime[@version]"
           Value="$(TargetFrameworkVersion)" />