Partager via


Compilation XAML

Le code XAML de l’interface utilisateur d’application multiplateforme .NET (.NET MAUI) est compilé directement en langage intermédiaire (IL) avec le compilateur XAML (XAMLC). La compilation XAML offre un certain nombre d’avantages :

  • Il effectue la compilation case activée ing de XAML, vous informant des erreurs.
  • Il supprime une partie du temps de chargement et d’instanciation pour les éléments XAML.
  • Il permet de réduire la taille de fichier de l’assembly final en n’incluant plus les fichiers .xaml.

La compilation XAML est activée par défaut dans les applications .NET MAUI. Pour les applications créées à l’aide de la configuration de débogage, la compilation XAML fournit une validation au moment de la compilation du code XAML, mais ne convertit pas le code XAML en il dans l’assembly. Au lieu de cela, les fichiers XAML sont inclus en tant que ressources incorporées dans le package d’application et évalués au moment de l’exécution. Pour les applications créées à l’aide de la configuration de mise en production, la compilation XAML fournit la validation au moment de la compilation du code XAML et convertit le code XAML en il écrit dans l’assembly. Toutefois, le comportement de compilation XAML peut être substitué dans les deux configurations avec la XamlCompilationAttribute classe.

Important

Les liaisons compilées peuvent être activées pour améliorer les performances de liaison de données dans les applications .NET MAUI. Pour plus d’informations, consultez Liaisons compilées.

Désactiver la compilation XAML

La compilation XAML peut être désactivée en passant XamlCompilationOptions.Skip au XamlCompilationAttribute:

[assembly: XamlCompilation(XamlCompilationOptions.Skip)]

Dans cet exemple, la compilation XAML est désactivée dans l’assembly, avec des erreurs XAML signalées au moment de l’exécution plutôt qu’au moment de la compilation.

La compilation XAML peut également être désactivée au niveau du type :

[XamlCompilation (XamlCompilationOptions.Skip)]
public partial class MyPage : ContentPage
{
    ...
}

Dans cet exemple, la compilation XAML est désactivée uniquement pour la MyPage classe.

Avertissement

La désactivation de la compilation XAML n’est pas recommandée, car le code XAML est ensuite analysé et interprété au moment de l’exécution, ce qui réduit les performances de l’application.

Activer la compilation XAML

Étant donné que la compilation XAML est activée par défaut dans les applications .NET MAUI, la suppression des XamlCompilation(XamlCompilationOptions.Skip) instructions garantit que la compilation XAML est activée.

Vous pouvez également activer la compilation XAML de force en passant XamlCompilationOptions.Compile à :XamlCompilationAttribute

[assembly: XamlCompilation(XamlCompilationOptions.Compile)]

Dans cet exemple, la compilation XAML est activée pour l’ensemble du code XAML contenu dans l’assembly, avec des erreurs XAML signalées au moment de la compilation plutôt que pour le runtime.

La compilation XAML peut également être activée au niveau du type :

[XamlCompilation (XamlCompilationOptions.Compile)]
public partial class MyPage : ContentPage
{
    ...
}

Dans cet exemple, la compilation XAML est activée uniquement pour la MyPage classe.