Freigeben über


CombinePath-Aufgabe

Kombiniert die angegebenen Pfade zu einem einzigen Pfad.

Aufgabenparameter

In der folgenden Tabelle werden die Parameter der CombinePath-Aufgabe beschrieben.

Parameter Beschreibung
BasePath Erforderlicher String -Parameter.

Der Basispfad, der mit den anderen Pfaden kombiniert werden soll. Der Pfad kann relativ, absolut oder nicht angegeben sein.
Paths Erforderlicher ITaskItem[]-Parameter.

Eine Liste einzelner Pfade, die mit BasePath zu einem kombinierten Pfad kombiniert werden können. Pfade können relativ oder absolut sein.
CombinedPaths Optionaler ITaskItem[] -Ausgabeparameter.

Der kombinierte Pfad, der durch diese Aufgabe erstellt wurde

Hinweise

Zusätzlich zu den oben aufgeführten Parametern erbt diese Aufgabe Parameter von der TaskExtension-Klasse, die selbst von der Task-Klasse erbt. Eine Liste mit diesen zusätzlichen Parametern und ihren Beschreibungen finden Sie unter TaskExtension-Basisklasse.

Das folgende Beispiel zeigt, wie eine Ausgabeordnerstruktur mit CombinePath erstellt wird, um die Eigenschaft $(OutputDirectory) zu konstruieren, indem der mit $(ReleaseDirectory) verknüpfte Stammpfad $(PublishRoot) mit der Unterordnerliste @(LangDirectories) kombiniert wird.

 <PropertyGroup>
   <OutputType>Exe</OutputType>
   <TargetFramework>netcoreapp3.1</TargetFramework>
   <PublishRoot>C:\Site1\</PublishRoot>
   <ReleaseDirectory>Release\</ReleaseDirectory>
 </PropertyGroup>

 <ItemGroup>
   <LangDirectories Include="en-us\;fr-fr\"/>
 </ItemGroup>

 <Target Name="CreateOutputDirectories" AfterTargets="Build">
   <CombinePath BasePath="$(PublishRoot)$(ReleaseDirectory)" Paths="@(LangDirectories)" >
     <Output TaskParameter="CombinedPaths" ItemName="OutputDirectories"/>
   </CombinePath>
   <MakeDir Directories="@(OutputDirectories)" />
 </Target>

Die einzige Eigenschaft, der CombinePath erlaubt, eine Liste zu sein, ist Paths. In diesem Fall ist die Ausgabe ebenfalls eine Liste. Wenn also $(PublishRoot) gleich C:\Site1\ ist, und$(ReleaseDirectory) gleich Release\ ist, und@(LangDirectories) gleich en-us;fr-fr\ ist, dann erstellt dieses Beispiel die Ordner:

  • C:\Site1\Release\en-us\
  • C:\Site1\Release\fr-fr\

Siehe auch