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 para construir a propriedade combinando um caminho raiz CombinePath $(OutputDirectory) concatenado com e uma lista de $(PublishRoot) $(ReleaseDirectory) 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 CombinePath que permite ser uma lista é , nesse Paths caso, a saída também é uma lista. Portanto, se $(PublishRoot) for \ C:\Site1 e for $(ReleaseDirectory) Release \ e for @(LangDirectories) en-us ; \ fr-fr, este exemplo criará as pastas:

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

Confira também