Assemblys et le Global Assembly Cache (Guide de programmation C#)

Mise à jour : novembre 2007

Un assembly est un bloc de construction fondamental de toute application .NET Framework. Par exemple, lorsque vous générez une simple application C#, Visual Studio crée un assembly sous la forme d'un unique fichier exécutable portable (PE, Portable Executable), spécifiquement un EXE ou DLL.

Les assemblys contiennent des métadonnées qui décrivent leur propre numéro de version interne et les détails de tous les types de données et d'objet qu'ils contiennent. Pour plus d'informations, consultez Manifeste d'assembly.

Les assemblys sont chargés uniquement lorsqu'ils sont requis. S'ils ne sont pas utilisés, ils ne sont pas chargés. Cela signifie que les assemblys peuvent être un moyen efficace de gérer les ressources sur les grands projets.

Les assemblys peuvent contenir un ou plusieurs modules. Par exemple, les projets les plus volumineux peuvent être planifiés de telle sorte que plusieurs développeurs individuels travaillent sur des modules séparés qui, rassemblés, formeront un seul et même assembly. Pour plus d'informations sur les modules, consultez la rubrique « Comment : générer un assembly multifichier ».

Vue d'ensemble des assemblys

Les assemblys ont les propriétés suivantes :

  • Les assemblys sont implémentés sous forme de fichiers .exe ou .dll.

  • Vous pouvez partager un assembly entre applications en le plaçant dans le Global Assembly Cache.

  • Les assemblys doivent être dotés d'un nom fort avant d'être inclus dans le Global Assembly Cache. Pour plus d'informations, consultez Assemblys avec nom fort.

  • Les assemblys sont chargés en mémoire uniquement s'ils sont requis.

  • Vous pouvez obtenir par programme des informations sur un assembly à l'aide de la réflexion. Pour plus d'informations, consultez Réflexion.

  • Si vous souhaitez charger un assembly uniquement pour l'inspecter, utilisez une méthode telle que ReflectionOnlyLoadFrom.

  • Vous pouvez utiliser deux versions du même assembly dans une seule application. Pour plus d'informations, consultez extern alias.

Rubriques connexes

Pour plus d'informations

Spécification du langage C#

Pour plus d'informations, consultez les sections suivantes dans Spécifications du langage C#.

  • 1.2 Structure de programme

  • 9.1 Unités de compilation

Voir aussi

Concepts

Guide de programmation C#

Métadonnées et structure des fichiers PE

Référence

Domaines d'application (Guide de programmation C#)