Compartir a través de


DownloadFile (Tarea)

Descarga los archivos especificados mediante el Protocolo de transferencia de hipertexto (HTTP).

Nota

La tarea DownloadFile solo está disponible en MSBuild 15.8 y versiones posteriores.

Parámetros

En la siguiente tabla se describen los parámetros de la tarea DownloadFile .

Parámetro Descripción
DestinationFileName Parámetro ITaskItem opcional.

Nombre que se va a usar para el archivo descargado. De forma predeterminada, el nombre de archivo deriva de SourceUrl o el servidor remoto.
DestinationFolder Parámetro ITaskItem requerido.

Especifica la carpeta de destino en la que se va a descargar el archivo. Si no existe ninguna, se crea una carpeta.
DownloadedFile Parámetro de salida ITaskItem opcional.

Especifica el archivo que se ha descargado.
Retries Parámetro Int32 opcional.

Especifica cuántas veces se intenta descargar, si se ha producido un error en todos los intentos anteriores. Se establece en cero de forma predeterminada.
RetryDelayMilliseconds Parámetro Int32 opcional.

Especifica el retraso en milisegundos entre los reintentos necesarios. Tiene como valor predeterminado 5000.
SkipUnchangedFiles Parámetro Boolean opcional.

Si es true, omite la descarga de archivos sin modificar. Tiene como valor predeterminado true. La tarea DownloadFile considera que los archivos están sin modificar si tienen el mismo tamaño y la misma hora de última modificación según el servidor remoto.

Nota: No todos los servidores HTTP indican la fecha de última modificación de los archivos, lo que hace que el archivo se vuelva a descargar.
SourceUrl Parámetro String requerido.

Especifica la dirección URL que se va a descargar.

Comentarios

Además de los parámetros mencionados anteriormente, esta tarea hereda los parámetros de la clase TaskExtension, que a su vez hereda de la clase Task. Para obtener una lista de estos parámetros adicionales y sus descripciones, consulte TaskExtension base class.

Ejemplo

El ejemplo siguiente descarga un archivo y lo incluye en los elementos Content antes de compilar el proyecto.

<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>

Vea también