Eigenschaften mit MSBuild überschreiben

Ich möchte drei Eigenschaften in meiner MSBuild-Datei deklarieren und eine Eigenschaft mit dem Wert einer anderen überschreiben (abhängig vom aufgerufenen Ziel), kann jedoch nicht herausfinden, wie dies getan werden soll. Meine Build-Datei sieht ungefähr so ​​aus:

<PropertyGroup>
   <DeployPath_TEST>\\test-server-path\websites\mysite</DeployPath_TEST>
   <DeployPath_LIVE>\\live-server-path\websites\mysite</DeployPath_LIVE>
   <DeployPath></DeployPath>
</PropertyGroup>

<Target Name="Deploy-TEST">
   <PropertyGroup>
      <DeployPath>$(DeployPath_TEST)</DeployPath>
   </PropertyGroup>
   <CallTarget Targets="Deploy-Sub"/>
</Target>

<Target Name="Deploy-LIVE">
   <PropertyGroup>
      <DeployPath>$(DeployPath_TEST)</DeployPath>
   </PropertyGroup>
   <CallTarget Targets="Deploy-Sub"/>
</Target>

<Target Name="Deploy-Sub">
   <Message Text="Deploying to $(DeployPath)"/>
   <MSBuild Projects="MySolution.csproj" Targets="Rebuild" />

   <ItemGroup>
     <MyFiles Include="**\*"/>
   </ItemGroup>

   <Copy SourceFiles="@(MyFiles)" 
         DestinationFiles="@(MyFiles->'$(DeploymentPath)\%(RecursiveDir)%(FileName)%(Extension)')"/>

</Target>

Im Moment versuche ich, die Eigenschaft neu zu deklarieren, indem ich ihren Wert entsprechend einstelle, aber das funktioniert nicht.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage