Partilhar via


Tarefa CombinePath

Combina os caminhos especificados em um único caminho.

Parâmetros de tarefa

A tabela a seguir descreve os parâmetros da tarefa CombinePath.

Parâmetro Descrição
BasePath Parâmetro String obrigatório.

O caminho base para combinar com os outros caminhos. Pode ser um caminho relativo, um caminho absoluto ou um espaço em branco.
Paths Parâmetro ITaskItem[] obrigatório.

Uma lista de caminhos individuais para combinar com o BasePath para formar o caminho combinado. Os caminhos podem ser relativos ou absolutos.
CombinedPaths Parâmetro de saída ITaskItem[] opcional.

O caminho combinado é criado por essa tarefa.

Comentários

Além dos parâmetros listados acima, essa tarefa herda parâmetros da classe TaskExtension, que herda da classe Task. Para obter uma lista desses parâmetros adicionais e suas descrições, confira Classe base TaskExtension.

O exemplo a seguir mostra como criar uma estrutura de pasta de saída usando CombinePath para construir a propriedade $(OutputDirectory) combinando um caminho raiz $(PublishRoot) concatenado com $(ReleaseDirectory) e uma lista de subpastas @(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>

A única propriedade que CombinePath permite ser uma lista é Paths; nesse caso, a saída também é uma lista. Portanto, se $(PublishRoot) for C:\Site1\, $(ReleaseDirectory) for Release\ e @(LangDirectories) for en-us;fr-fr\, esses exemplos criarão as pastas:

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

Confira também