Qu'est-ce qu'un .NET Assembly ? J'ai parcouru le net et je n'ai pas réussi à comprendre la définition.
Réponses
Trop de publicités?Un assemblage est le fichier .dll qui se trouve sur votre disque dur et dans lequel sont stockées les classes du .NET Framework. Par exemple, toutes les classes contenues dans le cadre ASP.NET sont situées dans un assemblage nommé System.Web.dll.
Plus précisément, une assembly est la principale unité de déploiement, de sécurité et de contrôle de version dans le .NET Framework. Étant donné qu'une assembly peut englober plusieurs fichiers, elle est souvent appelée dll "logique".
Note
Le cadre .NET (version 2.0) comprend 51 assemblages.
Il existe deux types d'assemblages : privés et partagés. Un assemblage privé ne peut être utilisé que par une seule application. Un assembly partagé, par contre, peut être utilisé par toutes les applications situées sur le même serveur.
Les assemblages partagés sont situés dans le Global Assembly Cache (GAC). Par exemple, l'assemblage System.Web.dll et tous les autres assemblages inclus dans le .NET Framework se trouvent dans le Global Assembly Cache.
Note
Le Global Assembly Cache est physiquement situé dans le disque dur de votre ordinateur. \WINDOWS\Assembly dossier. Il existe une copie distincte de chaque assemblage dans votre dossier \WINDOWS\Microsoft.NET\Framework\v2.0.50727 dossier. Le premier ensemble d'assemblages est utilisé au moment de l'exécution et le second ensemble est utilisé au moment de la compilation.
Avant de pouvoir utiliser une classe contenue dans un assemblage dans votre application, vous devez ajouter une référence à l'assemblage. Par défaut, une application ASP.NET fait référence aux assemblages les plus courants contenus dans le Global Assembly Cache :
mscorlib.dll
System.dll
System.Configuration.dll
System.Web.dll
System.Data.dll
System.Web.Services.dll
System.Xml.dll
System.Drawing.dll
System.EnterpriseServices.dll
System.Web.Mobile.dll
Pour utiliser une classe particulière dans le .NET Framework, vous devez faire deux choses. Premièrement, votre application doit faire référence à l'assemblage qui contient la classe. Deuxièmement, votre application doit importer l'espace de nom associé à la classe.
Dans la plupart des cas, vous n'aurez pas à vous soucier de référencer l'assemblage nécessaire, car les assemblages les plus courants sont référencés automatiquement. Toutefois, si vous devez utiliser un assemblage spécialisé, vous devez ajouter une référence explicite à l'assemblage. Par exemple, si vous devez interagir avec Active Directory en utilisant les classes de l'espace de nom System.DirectoryServices, vous devrez ajouter une référence à l'assemblage System.DirectoryServices.dll dans votre application.
Chaque entrée de classe dans la documentation du SDK de .NET Framework indique l'assemblage et l'espace de nom associés à la classe. Par exemple, si vous recherchez la classe MessageQueue dans la documentation, vous découvrirez que cette classe se trouve dans l'espace de nom System.Messaging situé dans l'assemblage System.Messaging.dll.
Si vous utilisez Visual Web Developer, vous pouvez ajouter une référence à un assemblage de manière explicite en sélectionnant l'option de menu Site Web, Ajouter une référence, et en sélectionnant le nom de l'assemblage que vous devez référencer. Par exemple, si vous ajoutez une référence à l'assemblage System.Messaging.dll, le fichier de configuration Web de la liste 1.4 sera ajouté à votre application.
Par exemple, Web.Config
enter code here
Si vous préférez ne pas utiliser Visual Web Developer, vous pouvez ajouter la référence à l'assemblage System.Messaging.dll en créant à la main le fichier de l'exemple ci-dessus
MSDN dispose d'un bonne explication :
Les assemblages sont les blocs de construction des applications .NET Framework. Ils constituent l'unité fondamentale de déploiement, le contrôle de version, la réutilisation d'activation et de sécurité. autorisations de sécurité. Un assemblage est un collection de types et de ressources qui sont construits pour fonctionner ensemble et former une unité logique de fonctionnalité. Un assemblage assemblage fournit le langage commun commun les informations dont il a besoin pour connaître les implémentations des types. Pour le moteur d'exécution, un type n'existe pas en dehors du contexte d'un assembly.
En .Net, un assemblage peut être :
Une collection de divers gérable pièces contenant
Types (or Classes)
,Resources (Bitmaps/Images/Strings/Files)
,Namespaces
,Config Files
compiléPrivately
oPublicly
; déployé sur unlocal
oShared (GAC)
dossier ;discover-able
par d'autresprograms/assemblies
et ; peut être versionné.