Partager via


Chargement de dépendances dans .NET

Chaque application .NET a des dépendances. Même l’application simple hello world a des dépendances sur les parties des bibliothèques de classes .NET.

Comprendre la logique de chargement d’assembly par défaut dans .NET peut vous aider à résoudre les problèmes de déploiement classiques.

Dans certaines applications, les dépendances sont déterminées dynamiquement au moment de l’exécution. Dans ces situations, il est essentiel de comprendre comment les assemblys managés et les dépendances non managées sont chargés.

AssemblyLoadContext

L’API AssemblyLoadContext est centrale à la conception de chargement .NET. L’article Understanding AssemblyLoadContext fournit une vue d’ensemble conceptuelle de la conception.

Chargement des détails

Les détails de l’algorithme de chargement sont abordés brièvement dans plusieurs articles :

Créer une application avec des plug-ins

Le tutoriel Créer une application .NET avec des plug-ins décrit comment créer un AssemblyLoadContext personnalisé. Il utilise un AssemblyDependencyResolver pour résoudre les dépendances du plug-in. Le tutoriel isole correctement les dépendances du plug-in de l’application d’hébergement.

Déchargement d'assemblage

L'article Comment utiliser et déboguer le déchargement des assemblys dans .NET est un didacticiel pas à pas. Il montre comment charger une application .NET, l’exécuter, puis la décharger. L’article fournit également des conseils de débogage.

Collecter des informations détaillées sur le chargement des assemblies

L’article Collecter les informations de chargement d’assembly détaillées explique comment collecter des informations détaillées sur le chargement d’assembly managé dans le runtime. Il utilise l’outil dotnet-trace pour capturer les événements du chargeur d’assembly dans une trace d’un processus en cours d’exécution.