Tarefa MarkupCompilePass2MarkupCompilePass2 task

A tarefa MarkupCompilePass2 executa a compilação de marcação de segunda passagem em arquivos XAML (linguagem XAML)Extensible Application Markup Language (XAML) que fazem referência a tipos no mesmo projeto.The MarkupCompilePass2 task performs second-pass markup compilation on XAML (linguagem XAML)Extensible Application Markup Language (XAML) files that reference types in the same project.

Parâmetros de tarefaTask parameters

ParâmetroParameter DescriçãoDescription
AlwaysCompileMarkupFilesInSeparateDomain Parâmetro Boolean opcional.Optional Boolean parameter.

Especifica se a tarefa deve ser executada em um AppDomain separado.Specifies whether to run the task in a separate AppDomain. Se esse parâmetro retorna false, a tarefa é executada no mesmo AppDomain que MSBuild (Microsoft Build Engine)Microsoft build engine (MSBuild) e é executada mais rapidamente.If this parameter returns false, the task runs in the same AppDomain as MSBuild (Microsoft Build Engine)Microsoft build engine (MSBuild), and it runs faster. Se o parâmetro retorna true, a tarefa é executada em um segundo AppDomain que é isolado de MSBuildMSBuild e é executada de modo mais lento.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 as referências aos assemblies alterados durante o processo de build.Specifies references to assemblies that change during the build process. Por exemplo, uma solução do Visual Studio pode conter um projeto que faz referência à saída compilada de outro projeto.For example, a Visual Studio solution may contain one project that references the compiled output of another project. Nesse caso, a saída compilada do segundo projeto pode ser adicionada a AssembliesGeneratedDuringBuild.In this case, the compiled output of the second project can be added to AssembliesGeneratedDuringBuild.

Observação: AssembliesGeneratedDuringBuild deve conter referências ao conjunto completo de assemblies que são gerados por uma solução de build.Note: AssembliesGeneratedDuringBuild must contain references to the complete set of assemblies that are generated by a build solution.
AssemblyName Parâmetro da cadeia de caracteres obrigatório.Required String parameter.

Especifica o nome curto do assembly que é gerado para um projeto.Specifies the short name of the assembly that is generated for a project. Por exemplo, se um projeto está gerando um executável Microsoft WindowsMicrosoft Windows cujo nome é WinExeAssembly.exe, o parâmetro AssemblyName tem um valor de 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 saída opcional ITaskItem[].Optional ITaskItem[] output parameter.

Contém a lista de arquivos gerados no formato binário XAMLXAML.Contains the list of generated files in XAMLXAML binary format.
KnownReferencePaths Parâmetro String[] opcional.Optional String[] parameter.

Especifica as referências aos assemblies nunca alterados durante o processo de build.Specifies references to assemblies that are never changed during the build process. Inclui assemblies que estão localizados no GAC (cache de assembly global)global assembly cache (GAC), em um diretório de instalação Microsoft .NET FrameworkMicrosoft .NET Framework e assim por diante.Includes assemblies that are located in the GAC (cache de assembly global)global assembly cache (GAC), in a Microsoft .NET FrameworkMicrosoft .NET Framework installation directory, and so on.
Language Parâmetro obrigatório String.Required String parameter.

Especifica a linguagem gerenciada à qual o compilador dá suporte.Specifies the managed language that the compiler supports. As opções válidas são C#, VB, JScript e C++.The valid options are C#, VB, JScript, and C++.
LocalizationDirectivesToLocFile Parâmetro String opcional.Optional String parameter.

Especifica como gerar informações de localização para cada arquivo XAMLXAML de origem.Specifies how to generate localization information for each source XAMLXAML file. As opções válidas são None, CommentsOnly e All.The valid options are None, CommentsOnly, and All.
OutputPath Parâmetro da cadeia de caracteres obrigatório.Required String parameter.

Especifica o diretório no qual ocorre a geração dos arquivos de formato binário XAMLXAML gerados.Specifies the directory in which the generated XAMLXAML binary format files are generated.
OutputType Parâmetro da cadeia de caracteres obrigatório.Required String parameter.

Especifica o tipo de assembly que é gerado por um projeto.Specifies the type of assembly that is generated by a project. As opções válidas são winexe, exe, library e netmodule.The valid options are winexe, exe, library, and netmodule.
References Parâmetro opcional ITaskItem[].Optional ITaskItem[] parameter.

Especifica a lista de referências de arquivos para assemblies que contêm os tipos que são usados nos arquivos XAMLXAML.Specifies the list of references from files to assemblies that contain the types that are used in the XAMLXAML files. Uma referência é ao assembly gerado pela tarefa GenerateTemporaryTargetAssembly, que deve ser executada antes da tarefa 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 o namespace raiz para as classes que estão dentro do projeto.Specifies the root namespace for classes that are inside the project. RootNamespace também é usado como o namespace padrão de um arquivo de código gerenciado gerado quando o arquivo XAMLXAML correspondente não inclui o 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.

Quando é true, informações de diagnóstico são geradas e incluídas no XAMLXAML compilado para auxiliar na depuração.When true, diagnostic information is generated and included in the compiled XAMLXAML in order to aid debugging.

ComentáriosRemarks

Antes de executar MarkupCompilePass2, você deve gerar um assembly temporário que contém os tipos que são usados pelos arquivos XAMLXAML, cujas passagens de compilação de marcação foram adiadas.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. Gere o assembly temporário executando a tarefa GenerateTemporaryTargetAssembly.You generate the temporary assembly by running the GenerateTemporaryTargetAssembly task.

Uma referência ao assembly temporário gerado é fornecida para MarkupCompilePass2 quando ele é executado, permitindo que os arquivos XAMLXAML cujo build foi adiado na primeira passagem de build de marcação sejam agora compilados em formato binário.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.

ExemploExample

O exemplo a seguir mostra como usar a tarefa MarkupCompilePass2 para executar uma compilação de segunda passagem.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>

Consulte tambémSee also

Referência do WPF MSBuildWPF MSBuild reference
Referência de tarefas do WPF MSBuildWPF MSBuild task reference
Referência do MSBuildMSBuild reference
Referência de tarefas do MSBuildMSBuild task reference
Compilar um aplicativo WPFBuild a WPF application (WPF)
Visão geral dos aplicativos de navegador XAML do WPFWPF XAML browser applications overview