Partager via


MarkupCompilePass2 (tâche)

La tâche MarkupCompilePass2 effectue la première passe de compilation du balisage sur les fichiers XAML qui référencent des types dans le même projet.

Paramètres de tâche

Paramètre Description
AlwaysCompileMarkupFilesInSeparateDomain Paramètre Boolean facultatif.

Indique si la tâche doit être exécutée dans un AppDomain séparé. Si ce paramètre retourne false, la tâche s’exécute dans le même AppDomain que MSBuild, et plus rapidement. Si le paramètre retourne true, la tâche s’exécute dans un deuxième AppDomain isolé de MSBuild, et plus lentement.
AssembliesGeneratedDuringBuild Paramètre String[] facultatif.

Spécifie des références à des assemblys qui changent pendant le processus de génération. Par exemple, une solution Visual Studio 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 obligatoire.

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 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 à des assemblys qui ne sont jamais modifiés pendant le processus de génération. Inclut des assemblys situés dans le Global Assembly Cache (GAC), dans un répertoire d’installation .NET, et ainsi de suite.
Language Paramètre String obligatoire.

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

Spécifie le répertoire dans lequel les fichiers au format binaire XAML sont générés.
OutputType Paramètre String obligatoire.

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 des références des fichiers aux assemblys qui contiennent les types qui sont utilisés dans les fichiers XAML. Une des références correspond à l’assembly qui a été 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 qui se trouvent dans le 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.

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

Remarques

Avant d’exécuter MarkupCompilePass2, vous devez générer un assembly temporaire qui contient les types utilisés par les fichiers XAML dont la passe de compilation du balisage a été différée. 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, ce qui permet aux fichiers XAML dont la compilation a été différée lors de la première passe de compilation du balisage d’être maintenant compilés au format binaire.

Exemple

L’exemple suivant montre comment utiliser la tâche MarkupCompilePass2 pour exécuter une deuxième passe de 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>

Voir aussi