Partager via


MarkupCompilePass2, tâche

La tâche MarkupCompilePass2 exécute un deuxième passage de compilation du balisage sur les fichiers XAML (eXtensible Application Markup Language) qui font référence à des types du même projet.

Paramètres de la tâche

Paramètre

Description

AlwaysCompileMarkupFilesInSeparateDomain

Paramètre Boolean facultatif.

Spécifie s'il faut exécuter la tâche dans un AppDomain séparé. Si ce paramètre retourne la valeur false, la tâche s'exécute plus rapidement et dans le même AppDomain que Microsoft Build Engine (MSBuild). Si le paramètre retourne la valeur true, la tâche s'exécute plus lentement dans un deuxième AppDomain isolé de MSBuild.

AssembliesGeneratedDuringBuild

Paramètre String[] facultatif.

Spécifie des références aux assemblys qui sont modifiés lors du processus de génération. Par exemple, une solution Microsoft Visual Studio 2005 peut contenir un projet qui référence la sortie compilée d'un autre projet. Dans ce cas, la sortie compilée du deuxième projet peut être ajoutée à AssembliesGeneratedDuringBuild.

Remarque : AssembliesGeneratedDuringBuild doit contenir des références au jeu complet des assemblys générés par une solution de génération.

AssemblyName

Paramètre String requis.

Spécifie le nom court de l'assembly généré pour un projet. Par exemple, si un projet génère un exécutable Microsoft Windows dont le nom est WinExeAssembly.exe, le paramètre AssemblyName a la valeur WinExeAssembly.

GeneratedBaml

Paramètre de sortie ITaskItem[] facultatif.

Contient la liste des fichiers générés au format binaire XAML.

KnownReferencePaths

Paramètre String[] facultatif.

Spécifie les références aux assemblys qui ne sont jamais modifiés au cours du processus de génération. Inclut des assemblys localisés dans le Global Assembly Cache (GAC), dans un répertoire d'installation Microsoft .NET Framework, et ainsi de suite.

Language

Paramètre String requis.

Spécifie le langage managé pris en charge par le compilateur. les options valides sont C#, VB, JScript, et C++.

LocalizationDirectivesToLocFile

Paramètre String facultatif.

Spécifie comment générer des informations de localisation pour chaque fichier XAML source. Les options valides sont None, CommentsOnly et All.

OutputPath

Paramètre String requis.

Spécifie le répertoire dans lequel les fichiers au format binaire XAML sont générés.

OutputType

Paramètre String requis.

Spécifie le type d'assembly généré par un projet. Les options valides sont winexe, exe, library et netmodule.

References

Paramètre ITaskItem[] facultatif.

Spécifie la liste de références de fichiers aux assemblys qui contiennent les types utilisés dans les fichiers XAML. L'une des références correspond à l'assembly généré par la tâche GenerateTemporaryTargetAssembly, qui doit être exécutée avant la tâche MarkupCompilePass2.

RootNamespace

Paramètre String facultatif.

Spécifie l'espace de noms racine pour les classes à l'intérieur du projet. RootNamespace est également utilisé comme espace de noms par défaut d'un fichier de code managé généré lorsque le fichier XAML correspondant n'inclut pas l'attribut x:Class.

XAMLDebuggingInformation

Paramètre Boolean facultatif.

Lorsque la valeur est true, les informations de diagnostic sont générées et incluses dans le XAML compilé pour faciliter le débogage.

Notes

Avant d'exécuter MarkupCompilePass2, vous devez générer un assembly temporaire contenant les types utilisés par les fichiers XAML dont le passage de compilation du balisage a été différé. Pour générer l'assembly temporaire, exécutez la tâche GenerateTemporaryTargetAssembly.

Une référence à l'assembly temporaire généré est fournie à MarkupCompilePass2 lors de son exécution afin que les fichiers XAML, dont la compilation a été différée au premier passage de compilation du balisage, puissent désormais être compilés au format binaire.

Exemple

L'exemple suivant indique comment utiliser la tâche MarkupCompilePass2 pour exécuter un deuxième passage de compilation.

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

Voir aussi

Concepts

Génération d'une application WPF (WPF)

Vue d'ensemble des applications de navigateur XAML

Autres ressources

Référence MSBuild - WPF

Référence des tâches MSBuild WPF

Référence MSBuild

Référence des tâches MSBuild