Compartir a través de


MarkupCompilePass2 (Tarea)

Actualización: noviembre 2007

La tarea MarkupCompilePass2 realiza una compilación de marcado de segundo paso en los archivos Lenguaje de marcado de aplicaciones extensible (XAML) que hacen referencia a tipos del mismo proyecto.

Parámetros de la tarea

Parameter

Description

AlwaysCompileMarkupFilesInSeparateDomain

Parámetro opcional de tipo Boolean.

Especifica si la tarea se ejecuta en un AppDomain independiente. Si este parámetro devuelve el valor false, la tarea se ejecuta en el mismo dominio AppDomain que Microsoft build engine (MSBuild) y lo hace más rápido. Si el parámetro devuelve el valor true, la tarea se ejecuta en otro dominio AppDomain que está aislado de MSBuild y su ejecución es más lenta.

AssembliesGeneratedDuringBuild

Parámetro opcional de tipo String[].

Especifica las referencias a ensamblados que cambian durante el proceso de compilación. Por ejemplo, una solución de Microsoft Visual Studio 2005 puede contener un proyecto que haga referencia al resultado compilado de otro proyecto. En este caso, el resultado compilado del segundo proyecto se puede agregar a AssembliesGeneratedDuringBuild.

Nota: AssembliesGeneratedDuringBuild debe contener referencias al conjunto completo de ensamblados que genere una solución de compilación.

AssemblyName

Parámetro obligatorio de tipo String.

Especifica el nombre corto del ensamblado que se genera para un proyecto. Por ejemplo, si un proyecto genera un archivo ejecutable de Microsoft Windows con el nombre WinExeAssembly.exe, el parámetro AssemblyName tiene un valor de WinExeAssembly.

GeneratedBaml

Parámetro de salida opcional de tipo ITaskItem[].

Contiene la lista de archivos generados en el formato binario de XAML.

KnownReferencePaths

Parámetro opcional de tipo String[].

Especifica las referencias a los ensamblados que no cambian nunca durante el proceso de compilación. Incluye ensamblados que se encuentran en la caché de ensamblados global (GAC), en un directorio de instalación de Microsoft .NET Framework, etc.

Language

Parámetro obligatorio de tipo String.

Especifica el lenguaje administrado que admite el compilador. Las opciones válidas son C#, VB, JScript, J# y C++.

LocalizationDirectivesToLocFile

Parámetro opcional de tipo String.

Especifica cómo se genera la información de localización de cada archivo de código fuente XAML. Las opciones válidas son None, CommentsOnly y All.

OutputPath

Parámetro obligatorio de tipo String.

Especifica el directorio en el que se crean los archivos de formato binario XAML generados.

OutputType

Parámetro obligatorio de tipo String.

Especifica el tipo de ensamblado que genera un proyecto. Las opciones válidas son winexe, exe, library y netmodule.

References

Parámetro opcional de tipo ITaskItem[].

Especifica la lista de referencias de los archivos a los ensamblados que contienen los tipos que se usan en los archivos XAML. Se hace una referencia al ensamblado generado por la tarea GenerateTemporaryTargetAssembly, que se debe ejecutar antes que la tarea MarkupCompilePass2.

RootNamespace

Parámetro opcional de tipo String.

Especifica el espacio de nombres raíz de las clases que están dentro del proyecto. También se usa RootNamespace como el espacio de nombres predeterminado de un archivo de código administrado generado cuando el archivo XAML correspondiente no incluye el atributo x:Class.

XAMLDebuggingInformation

Parámetro opcional de tipo Boolean.

Si el valor es true, se genera información de diagnóstico y se incluye en el archivo XAML compilado como ayuda para la depuración.

Comentarios

Antes de ejecutar MarkupCompilePass2, debe generar un ensamblado temporal con los tipos que usan los archivos XAML cuyo paso de compilación de marcado se aplazó. Para generar el ensamblado temporal, ejecute la tarea GenerateTemporaryTargetAssembly.

Cuando se ejecuta MarkupCompilePass2, se le proporciona una referencia al ensamblado temporal generado. De esta forma, se pueden compilar en formato binario los archivos XAML cuya compilación se aplazó en el primer paso de compilación de marcado.

Ejemplo

En el ejemplo siguiente, se muestra cómo usar la tarea MarkupCompilePass2 para realizar una compilación de segundo paso.

<Project xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
  <UsingTask 
    TaskName="Microsoft.Build.Tasks.Windows.MarkupCompilePass2" 
    AssemblyFile="C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\PresentationBuildTasks.dll" />
  <Target Name="MarkupCompilePass2Task">
    <MarkupCompilePass2 
      AssemblyName="WPFMSBuildSample"
      Language="C#"
      OutputType="WinExe"
      OutputPath="obj\Debug\"
      References=".\obj\debug\WPFMSBuildSample.exe;c:\windows\Microsoft.net\Framework\v2.0.50727\System.dll;C:\Program Files\Reference Assemblies\Microsoft\WinFx\v3.0\PresentationCore.dll;C:\Program Files\Reference Assemblies\Microsoft\WinFx\v3.0\PresentationFramework.dll;C:\Program Files\Reference Assemblies\Microsoft\WinFx\v3.0\WindowsBase.dll" />
  </Target>
</Project>

Vea también

Conceptos

Generar una aplicación de WPF (WPF)

Información general sobre aplicaciones de explorador XAML de Windows Presentation Foundation

Otros recursos

Referencia de MSBuild para Windows Presentation Foundation

Referencia de tareas de MSBuild para Windows Presentation Foundation

Referencia de MSBuild

Referencia de tareas de MSBuild