Compartilhar via


Tarefa MarkupCompilePass1

The MarkupCompilePass1 tarefa converte não localizáveis Extensible Application Markup Language (XAML) arquivos de projeto para o formato binário compilado.

Parâmetros da tarefa

Parâmetro

Descrição

AllGeneratedFiles

Opcional [] ITaskItem parâmetro de saída.

Contém uma lista completa dos arquivos gerados pelo MarkupCompilePass1 tarefa.

AlwaysCompileMarkupFilesInSeparateDomain

Opcional booliano parâmetro.

Especifica se deve executar a tarefa em um separado AppDomain. Se esse parâmetro retorna False, a tarefa é executada no mesmo AppDomain sistema autônomo Mecanismo de compilação Microsoft (MSBuild) e ele é executado mais rapidamente. Se o parâmetro retorna True, a tarefa é executada em um segundo AppDomain que é isolado da MSBuild e é executada mais lenta.

ApplicationMarkup

Opcional [] ITaskItem parâmetro.

Especifica o nome do aplicativo definição XAML arquivo.

AssembliesGeneratedDuringBuild

Opcional String parâmetro.

Especifica as referências aos assemblies alterados durante o processo de compilação. Por exemplo, um Microsoft Visual Studio 2005 solução pode conter um projeto que faz referência a saída compilada de outro projeto. Nesse caso, a saída compilada do projeto segundo pode ser adicionada ao AssembliesGeneratedDuringBuild parâmetro.

Observação: The AssembliesGeneratedDuringBuild parâmetro deve conter referências do conjunto de módulos (assemblies) que são gerados por uma solução de compilação completo.

AssemblyName

Necessário seqüência de caracteres parâmetro.

Especifica o nome curto do assembly que é gerado para um projeto. Por exemplo, se um projeto está gerando um Windows executável cujo nome é WinExeAssembly.exe, the AssemblyName parâmetro tem um valor de WinExeAssembly.

AssemblyPublicKeyToken

Opcional Seqüência de caracteres parâmetro.

Especifica o token de chave pública do assembly.

AssemblyVersion

Opcional Seqüência de caracteres parâmetro.

Especifica o número de versão do assembly.

ContentFiles

Opcional [] ITaskItem parâmetro.

Especifica a lista de arquivos de conteúdo flexíveis.

DefineConstants

Opcional Seqüência de caracteres parâmetro.

Especifica que o valor corrente de DefineConstants, é mantido. que afeta a geração de assembly de destino; se este parâmetro for alterado, a API pública do assembly de destino pode ser alterada e a compilação de XAML arquivos que fazem referência a tipos de locais podem ser afetados.

ExtraBuildControlFiles

Opcional [] ITaskItem parâmetro.

Especifica uma lista de arquivos que controlam se a recompilar é acionado quando o MarkupCompilePass1 tarefa executa novamente; uma recompilar é disparada se um desses arquivos é alterado.

GeneratedBamlFiles

Opcional [] ITaskItem parâmetro de saída.

Contém a lista de arquivos gerados em XAML formato binário.

GeneratedCodeFiles

Opcional [] ITaskItem parâmetro de saída.

Contém a lista de arquivos de código gerenciado gerado.

GeneratedLocalizationFiles

Opcional [] ITaskItem parâmetro de saída.

Contém a lista de arquivos de localização que foram gerados para cada localizáveis XAML arquivo.

HostInBrowser

Opcional Seqüência de caracteres parâmetro.

Especifica se o assembly gerado é um aplicativo de navegador XAML (XBAP). As opções válidas são True and False. If True, código é gerado para suporte à hospedagem do navegador.

KnownReferencePaths

Opcional String parâmetro.

Especifica as referências para módulos (assemblies) que não é alterados durante o processo de compilação. Inclui assemblies localizados no cache de assembly global (GAC), em um Microsoft .NET Framework diretório de instalação e assim por diante.

Language

Necessário Seqüência de caracteres parâmetro.

Especifica a linguagem gerenciada o compilador oferece suporte. O válido opções são TRANSLATION FROM VPE FOR CSHARP, VB, JScript, J#, and C++.

LanguageSourceExtension

Opcional Seqüência de caracteres parâmetro.

Especifica a extensão é acrescentada à extensão do arquivo gerado código gerenciado:

<Filename>.g<LanguageSourceExtension>

Se o LanguageSourceExtension parâmetro não é conjunto com um valor específico, a extensão de nome de arquivo de fonte padrão para um linguagem é usada: .vb for Microsoft Visual Basic, .CSharp for C#.

LocalizationDirectivesToLocFile

Opcional Seqüência de caracteres parâmetro.

Especifica como gerar informações de localização para cada fonte de XAML arquivo. O válido opções são Nenhum, CommentsOnly, and Todos os.

OutputPath

Necessário Seqüência de caracteres parâmetro.

Especifica o diretório em que o gerado gerenciado arquivos de código e XAML são gerados arquivos de formato binário.

OutputType

Necessário Seqüência de caracteres parâmetro.

Especifica o tipo de assembly gerada por um projeto. As opções válidas são winexe, exe, biblioteca, and netmodule.

PageMarkup

Opcional [] ITaskItem parâmetro.

Especifica uma lista de XAML arquivos para processar.

References

Opcional [] ITaskItem parâmetro.

Especifica a lista de referências de arquivos para assemblies que contêm tipos que são usados no XAML arquivos.

RequirePass2ForMainAssembly

Opcional booliano parâmetro de saída.

Indica se o projeto contém não localizáveis XAML arquivos que fazem referência a tipos de locais que são incorporados no assembly principal.

RequirePass2ForSatelliteAssembly

Opcional booliano parâmetro de saída.

Indica se o projeto contém localizáveis XAML arquivos que fazem referência a tipos de locais que são incorporados no assembly principal.

RootNamespace

Opcional Seqüência de caracteres parâmetro.

Especifica o namespace raiz para classes que estão dentro do projeto. RootNamespace também é usado sistema autônomo o espaço para nome padrão de um código gerenciado gerado arquivo quando o correspondente XAML arquivo não inclui o x:Class atributo.

SourceCodeFiles

Opcional [] ITaskItem parâmetro.

Especifica a lista de arquivos de código para o projeto corrente. A lista não inclui arquivos gerados específicos do linguagem de código gerenciado.

UICulture

Opcional Seqüência de caracteres parâmetro.

Especifica o asssembly satélite para cultura da interface do usuário em que o gerado XAML arquivos de formato binário são incorporados. If UICulture não estiver definido, a geradoXAML arquivos de formato binário são incorporados no assembly principal.

XAMLDebuggingInformation

Opcional booliano parâmetro.

Quando True, informações de diagnóstico é gerada e incluída no compilado XAML para depuração de auxílio.

Comentários

The MarkupCompilePass1 tarefa normalmente compila XAML em formato binário e gera arquivos de código. If a XAML arquivo contém referências aos tipos definidos no projeto mesmo, sua compilação em formato binário é adiada por MarkupCompilePass1 para uma segunda passagem de compilação de marcação (MarkupCompilePass2). Esses arquivos devem ter sua compilação adiada porque eles devem aguardar até que os tipos referenciados definida localmente são compilados. No entanto, se um XAML o arquivo tem um x:Class atributo, MarkupCompilePass1 gera o arquivo de código de específico a um linguagem para ele.

A XAML o arquivo é localizável, caso ele contenha elementos que usam o x:Uid atributo:

<Page x:Class="WPFMSBuildSample.Page1"
    xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
    x:Uid="Page1Uid"
    >
  ...
</Page>

A XAML arquivo faz referência a um tipo definido localmente quando ele declara um XML namespace que usa o clr-namespace valor para se referir a um namespace no projeto corrente:

<Page x:Class="WPFMSBuildSample.Page1"
    xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:localNamespace="clr-namespace:WPFMSBuildSample"
    >
    <Grid>
      <Grid.Resources>
        <localNameSpace:LocalType x:Key="localType" />
      </Grid.Resources>
      ...
    </Grid>
</Page>

Se qualquer XAML arquivo é localizável, ou faz referência a um tipo definido localmente, uma segunda passagem de compilação da marcação seja necessária, que requer a execução do Tarefa GenerateTemporaryTargetAssembly e, em seguida, o Tarefa MarkupCompilePass2.

Exemplo

The following example shows how to convert three Page XAML files to binary format files. Page1 contém uma referência a um tipo Class1, qual é no espaço para nome raiz do projeto e portanto, não é convertido em arquivos de formato binário nesta passagem de compilar da marcação. Instead, the Tarefa GenerateTemporaryTargetAssembly is executed and is followed by the Tarefa MarkupCompilePass2.

<Project xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
  <UsingTask 
    TaskName="Microsoft.Build.Tasks.Windows.MarkupCompilePass1" 
    AssemblyFile="C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\PresentationBuildTasks.dll" />
  <Target Name="MarkupCompilePass1Task">
    <MarkupCompilePass1 
      AssemblyName="WPFMSBuildSample"
      Language="C#"
      OutputType="WinExe"
      OutputPath="obj\Debug\"
      ApplicationMarkup="App.xaml"
      PageMarkup="Page1.xaml;Page2.xaml;Page3.xaml"
      SourceCodeFiles="Class1.cs"
      References="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ém

Conceitos

Building a WPF Application (WPF)

Visão geral sobre Windows Presentation Foundation XAML Browser Applications

Outros recursos

Referência do Windows Presentation Foundation MSBuild

Referência de tarefa MSBuild do Windows Presentation Foundation

Referência do MSBuild

Referência de tarefa do MSBuild