MarkupCompilePass2 (tarea)MarkupCompilePass2 task

La tarea MarkupCompilePass2 realiza una compilación de marcado de segundo paso en archivos de Lenguaje XAML (Extensible Application Markup Language)Extensible Application Markup Language (XAML) que hacen referencia a los tipos del mismo proyecto.The MarkupCompilePass2 task performs second-pass markup compilation on Lenguaje XAML (Extensible Application Markup Language)Extensible Application Markup Language (XAML) files that reference types in the same project.

Parámetros de la tareaTask parameters

ParámetroParameter DescripciónDescription
AlwaysCompileMarkupFilesInSeparateDomain Parámetro Boolean opcional.Optional Boolean parameter.

Especifica si la tarea se va a ejecutar en un AppDomain independiente.Specifies whether to run the task in a separate AppDomain. Si este parámetro devuelve el valor false, la tarea se ejecuta en el mismo AppDomain que Microsoft build engine (MSBuild)Microsoft build engine (MSBuild) y su ejecución es más rápida.If this parameter returns false, the task runs in the same AppDomain as Microsoft build engine (MSBuild)Microsoft build engine (MSBuild), and it runs faster. Si el parámetro devuelve el valor true, la tarea se ejecuta en otro AppDomain que está aislado de MSBuildMSBuild y su ejecución es más lenta.If the parameter returns true, the task runs in a second AppDomain that is isolated from MSBuildMSBuild and runs slower.
AssembliesGeneratedDuringBuild Parámetro String[] opcional.Optional String[] parameter.

Especifica referencias a los ensamblados que cambian durante el proceso de compilación.Specifies references to assemblies that change during the build process. Por ejemplo, una solución de Visual Studio puede contener un proyecto que haga referencia al resultado compilado de otro proyecto.For example, a Visual Studio solution may contain one project that references the compiled output of another project. En este caso, el resultado compilado del segundo proyecto se puede agregar a AssembliesGeneratedDuringBuild.In this case, the compiled output of the second project can be added to AssembliesGeneratedDuringBuild.

Nota: AssembliesGeneratedDuringBuild debe contener referencias al conjunto completo de ensamblados que genera una solución de compilación.Note: AssembliesGeneratedDuringBuild must contain references to the complete set of assemblies that are generated by a build solution.
AssemblyName Parámetro obligatorio de tipo String.Required String parameter.

Especifica el nombre corto del ensamblado que se genera para un proyecto.Specifies the short name of the assembly that is generated for a project. Por ejemplo, si un proyecto genera un archivo ejecutable de Microsoft WindowsMicrosoft Windows con el nombre WinExeAssembly.exe, el parámetro AssemblyName tiene el valor WinExeAssembly.For example, if a project is generating a Microsoft WindowsMicrosoft Windows executable whose name is WinExeAssembly.exe, the AssemblyName parameter has a value of WinExeAssembly.
GeneratedBaml Parámetro de salida opcional de tipo ITaskItem[].Optional ITaskItem[] output parameter.

Contiene la lista de archivos generados en formato binario XAMLXAML.Contains the list of generated files in XAMLXAML binary format.
KnownReferencePaths Parámetro String[] opcional.Optional String[] parameter.

Especifica referencias a los ensamblados que no cambian nunca durante el proceso de compilación.Specifies references to assemblies that are never changed during the build process. Incluye los ensamblados que se encuentran en caché global de ensamblados (GAC)global assembly cache (GAC), en un directorio de instalación de Microsoft .NET FrameworkMicrosoft .NET Framework, etc.Includes assemblies that are located in the caché global de ensamblados (GAC)global assembly cache (GAC), in a Microsoft .NET FrameworkMicrosoft .NET Framework installation directory, and so on.
Language Parámetro obligatorio de tipo String.Required String parameter.

Especifica el lenguaje administrado que el compilador admite.Specifies the managed language that the compiler supports. Las opciones válidas son C#, VB, JScript y C++.The valid options are C#, VB, JScript, and C++.
LocalizationDirectivesToLocFile Parámetro String opcional.Optional String parameter.

Especifica cómo generar la información de localización para cada archivo de origen de XAMLXAML.Specifies how to generate localization information for each source XAMLXAML file. Las opciones válidas son None, CommentsOnly y All.The valid options are None, CommentsOnly, and All.
OutputPath Parámetro obligatorio de tipo String.Required String parameter.

Especifica el directorio en el que se generan los archivos de formato binario XAMLXAML.Specifies the directory in which the generated XAMLXAML binary format files are generated.
OutputType Parámetro obligatorio de tipo String.Required String parameter.

Especifica el tipo de ensamblado que genera un proyecto.Specifies the type of assembly that is generated by a project. Las opciones válidas son winexe, exe, library y netmodule.The valid options are winexe, exe, library, and netmodule.
References Parámetro opcional de tipo ITaskItem[].Optional ITaskItem[] parameter.

Especifica la lista de referencias de los archivos a los ensamblados que contienen los tipos que se usan en los archivos XAMLXAML.Specifies the list of references from files to assemblies that contain the types that are used in the XAMLXAML files. Una referencia es para el ensamblado que se ha generado mediante la tarea GenerateTemporaryTargetAssembly, que debe ejecutarse antes de la tarea MarkupCompilePass2.One reference is to the assembly that was generated by the GenerateTemporaryTargetAssembly task, which must be run before the MarkupCompilePass2 task.
RootNamespace Parámetro String opcional.Optional String parameter.

Especifica el espacio de nombres de la raíz de las clases que están dentro del proyecto.Specifies the root namespace for classes that are inside the project. RootNamespace también se usa como espacio de nombres predeterminado de un archivo de código administrado generado cuando el archivo XAMLXAML correspondiente no incluye el atributo x:Class.RootNamespace is also used as the default namespace of a generated managed code file when the corresponding XAMLXAML file does not include the x:Class attribute.
XAMLDebuggingInformation Parámetro Boolean opcional.Optional Boolean parameter.

Si el valor es true, se genera información de diagnóstico y se incluye en el archivo XAMLXAML compilado como ayuda para la depuración.When true, diagnostic information is generated and included in the compiled XAMLXAML in order to aid debugging.

ComentariosRemarks

Antes de ejecutar MarkupCompilePass2, debe generar un ensamblado temporal con los tipos que usan los archivos XAMLXAML cuyo paso de compilación de marcado se aplazó.Before you run MarkupCompilePass2, you must generate a temporary assembly that contains the types that are used by the XAMLXAML files whose markup compilation pass were deferred. Para generar el ensamblado temporal, ejecute la tarea GenerateTemporaryTargetAssembly.You generate the temporary assembly by running the GenerateTemporaryTargetAssembly task.

Cuando se ejecuta MarkupCompilePass2, se le proporciona una referencia al ensamblado temporal generado. De esta manera, se pueden compilar en formato binario los archivos XAMLXAML cuya compilación se ha aplazado en el primer paso de compilación de marcado.A reference to the generated temporary assembly is provided to MarkupCompilePass2 when it runs, allowing the XAMLXAML files whose compilation was deferred in the first markup compilation pass to now be compiled to binary format.

EjemploExample

En el ejemplo siguiente se muestra cómo usar la tarea MarkupCompilePass2 para realizar una compilación de segundo paso.The following example shows how to use the MarkupCompilePass2 task to perform a second pass compilation.

<Project xmlns="http://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énSee also

Referencia de MSBuild para WPFWPF MSBuild reference
Referencia de tareas de MSBuild para WPFWPF MSBuild task reference
Referencia de MSBuildMSBuild reference
Referencia de tareas de MSBuildMSBuild task reference
Compilar una aplicación de WPF (WPF)Build a WPF application (WPF)
Información general sobre las aplicaciones de explorador XAML de WPFWPF XAML browser applications overview