Tarefa DownloadFile

Baixa os arquivos especificados usando o protocolo HTTP.

Observação

A tarefa DownloadFile está disponível somente no MSBuild 15.8 e superior.

Parâmetros

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

Parâmetro Descrição
DestinationFileName Parâmetro opcional ITaskItem

O nome a ser usado para o arquivo baixado. Por padrão, o nome de arquivo é derivado da SourceUrl ou do servidor remoto.
DestinationFolder Parâmetro ITaskItem obrigatório.

Especifica a pasta de destino na qual baixar o arquivo. Se a pasta será criada, caso ela não exista.
DownloadedFile Parâmetro de saída ITaskItem opcional.

Especifica o arquivo baixado.
Retries Parâmetro Int32 opcional.

Especifica o número de tentativas de download, se todas as tentativas anteriores falharam. Usa zero como padrão.
RetryDelayMilliseconds Parâmetro Int32 opcional.

Especifica o atraso em milissegundos entre as repetições necessárias. Usa 5.000 como padrão.
SkipUnchangedFiles Parâmetro Boolean opcional.

Se ele for true, ignorará o download de arquivos inalterados. Assume o padrão de true. A tarefa DownloadFile considera os arquivos como inalterados se eles têm o mesmo tamanho e a mesma hora da última modificação, de acordo com o servidor remoto.

Observação: nem todos os servidores HTTP indicam que a data da última modificação dos arquivos fará com que o arquivo seja baixado novamente.
SourceUrl Parâmetro String obrigatório.

Especifica a URL a ser baixada.

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.

Exemplo

O exemplo a seguir baixa um arquivo e inclui-o nos itens Content antes de compilar o projeto.

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

    <PropertyGroup>
      <MyUrl>https://raw.githubusercontent.com/Microsoft/msbuild/master/LICENSE</MyUrl>
    </PropertyGroup>

    <Target Name="DownloadContentFiles" BeforeTargets="Build">
        <DownloadFile
            SourceUrl="$(MyUrl)"
            DestinationFolder="$(MSBuildProjectDirectory)">
        <Output TaskParameter="DownloadedFile" ItemName="Content" />
      </DownloadFile>
    </Target>

</Project>

Confira também