Attività MarkupCompilePass2
Aggiornamento: novembre 2007
L'attività MarkupCompilePass2 esegue la compilazione del markup del secondo passaggio sui file Extensible Application Markup Language (XAML) che fanno riferimento ai tipi nello stesso progetto.
Parametri dell'attività
Parametro |
Descrizione |
---|---|
AlwaysCompileMarkupFilesInSeparateDomain |
Parametro Boolean opzionale. Specifica se eseguire l'attività in un AppDomain separato. Se questo parametro restituisce false, l'attività verrà eseguita nello stesso AppDomain di Microsoft Build Engine (MSBuild) e in modo più rapido. Se il parametro restituisce true, l'attività verrà eseguita in un secondo AppDomain isolato da MSBuild e in modo più lento. |
AssembliesGeneratedDuringBuild |
Parametro String[] opzionale. Specifica i riferimenti ad assembly che vengono modificati durante il processo di compilazione. Una soluzione Microsoft Visual Studio 2005 può ad esempio contenere un progetto che fa riferimento all'output compilato di un altro progetto. In questo caso, l'output compilato del secondo progetto può essere aggiunto a AssembliesGeneratedDuringBuild. Nota: AssembliesGeneratedDuringBuild deve contenere riferimenti all'insieme completo di assembly generati da una soluzione di compilazione. |
AssemblyName |
Parametro String obbligatorio. Specifica il nome breve dell'assembly generato per un progetto. Se ad esempio un progetto sta generando un eseguibile Microsoft Windows il cui nome è WinExeAssembly.exe, il parametro AssemblyName presenterà il valore WinExeAssembly. |
GeneratedBaml |
Parametro di output ITaskItem[] opzionale. Contiene l'elenco dei file generati in formato binario XAML. |
KnownReferencePaths |
Parametro String[] opzionale. Specifica i riferimenti ad assembly che non vengono mai modificati durante il processo di compilazione. Include assembly che si trovano nella Global Assembly Cache (GAC), in una directory di installazione di Microsoft .NET Framework e così via. |
Language |
Parametro String obbligatorio. Specifica il linguaggio gestito supportato dal compilatore. Le opzioni valide sono C#, VB, JScript, J# e C++. |
LocalizationDirectivesToLocFile |
Parametro String opzionale. Specifica come generare informazioni di localizzazione per ogni file XAML di origine. Le opzioni valide sono None, CommentsOnly e All. |
OutputPath |
Parametro String obbligatorio. Specifica la directory in cui vengono generati i file XAML in formato binario. |
OutputType |
Parametro String obbligatorio. Specifica il tipo di assembly generato da un progetto. Le opzioni valide sono winexe, exe, library e netmodule. |
References |
Parametro ITaskItem[] opzionale. Specifica l'elenco dei riferimenti dai file agli assembly che contengono i tipi utilizzati nei file XAML. Un riferimento è all'assembly generato dall'attività GenerateTemporaryTargetAssembly, che deve essere eseguita prima dell'attività MarkupCompilePass2. |
RootNamespace |
Parametro String opzionale. Specifica lo spazio dei nomi radice per le classi all'interno del progetto. RootNamespace viene utilizzato anche come spazio dei nomi predefinito di un file di codice gestito generato quando il file XAML corrispondente non include l'attributo x:Class. |
XAMLDebuggingInformation |
Parametro Boolean opzionale. Se true, le informazioni diagnostiche verranno generate e incluse nel file XAML compilato per agevolare il debug. |
Note
Prima di eseguire MarkupCompilePass2, è necessario generare un assembly temporaneo che contenga i tipi utilizzati dai file XAML il cui passaggio di compilazione del markup è stato rinviato. L'assembly temporaneo viene generato eseguendo l'attività GenerateTemporaryTargetAssembly.
Viene fornito un riferimento all'assembly temporaneo generato per MarkupCompilePass2 quando è in esecuzione, consentendo la compilazione in formato binario dei file XAML la cui compilazione è stata rinviata nel primo passaggio di compilazione del markup.
Esempio
Nell'esempio seguente viene mostrato come utilizzare l'attività MarkupCompilePass2 per eseguire un secondo passaggio di compilazione.
<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>
Vedere anche
Concetti
Compilazione di un'applicazione WPF
Cenni preliminari sulle applicazioni browser XAML di Windows Presentation Foundation
Altre risorse
Riferimento a MSBuild di Windows Presentation Foundation
Riferimento ad attività MSBuild di Windows Presentation Foundation