Tugas CombinePath
Menggabungkan jalur yang ditentukan ke dalam satu jalur.
Parameter tugas
Tabel berikut ini menjelaskan parameter tugas CombinePath.
Parameter | Deskripsi |
---|---|
BasePath |
Parameter String wajib.Jalur dasar yang akan digabungkan dengan jalur lain. Dapat berupa jalur relatif, jalur absolut, atau kosong. |
Paths |
Parameter ITaskItem[] wajib.Daftar jalur individu untuk digabungkan dengan BasePath untuk membentuk jalur gabungan. Jalur bisa relatif atau absolut. |
CombinedPaths |
Parameter output ITaskItem[] opsional.Jalur gabungan yang dibuat oleh tugas ini. |
Keterangan
Selain parameter yang tercantum di atas, tugas ini mewarisi parameter dari kelas TaskExtension, yang mewarisi sendiri dari kelas Task. Untuk daftar parameter tambahan ini dan deskripsinya, lihat kelas dasar TaskExtension.
Contoh berikut menunjukkan cara membuat struktur folder output menggunakan CombinePath
untuk membangun properti $(OutputDirectory)
dengan menggabungkan jalur akar $(PublishRoot)
yang digabungkan dengan $(ReleaseDirectory)
dan daftar subfolder @(LangDirectories)
.
<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>
Satu-satunya properti yang CombinePath
memungkinkan untuk menjadi daftar adalah Paths
, dalam hal ini output juga merupakan daftar. Jadi, jika $(PublishRoot)
adalah C:\Site1\, dan $(ReleaseDirectory)
adalah Release\, dan @(LangDirectories)
adalah en-us;fr-fr\, maka contoh ini akan membuat folder:
- C:\Site1\Release\en-us\
- C:\Site1\Release\fr-fr\