Ensamblados y caché global de ensamblados (C# y Visual Basic)
Los ensamblados componen la unidad fundamental de implementación, control de versiones, reutilización, ámbito de activación y permisos de seguridad en una aplicación basada en .NET. Los ensamblados adoptan la forma de un archivo ejecutable (.exe) o un archivo de biblioteca de vínculos dinámicos (.dll) y son los bloques de creación de .NET Framework. Proporcionan a Common Language Runtime la información que necesita para estar al corriente de las implementaciones de tipos. Un ensamblado puede entenderse como una colección de tipos y recursos que forman una unidad lógica de funcionalidad y que se compilan para trabajar conjuntamente.
Los ensamblados pueden contener uno o más módulos. Por ejemplo, los proyectos de mayor envergadura se pueden planificar de tal forma que varios desarrolladores individuales trabajen en módulos separados y, a la vez, todos juntos para crear un solo ensamblado. Para obtener más información módulos, vea el tema Cómo: Compilar un ensamblado de varios archivos.
Los ensamblados tienen las siguientes propiedades:
Los ensamblados se implementan como archivos .exe o .dll.
Es posible compartir un ensamblado entre aplicaciones colocándolo en la memoria caché global de ensamblados. Los ensamblados deben tener un nombre seguro para que se puedan incluir en la memoria caché global de ensamblados. Para obtener más información, vea Ensamblados con nombre seguro.
Los ensamblados sólo se cargan en la memoria si son necesarios. Si no se utilizan, no se cargan. Esto significa que los ensamblados pueden constituir una manera eficaz a la hora de administrar recursos en proyectos de mayor envergadura.
Se puede obtener información mediante programación sobre un ensamblado usando la reflexión. Para obtener más información, vea Reflexión.
Si sólo se desea cargar un ensamblado para inspeccionarlo, utilice un método como ReflectionOnlyLoadFrom.
Manifiesto del ensamblado
Todos los ensamblados contienen un manifiesto del ensamblado. Este es similar a una tabla de contenido, y contiene la siguiente información:
La identidad del ensamblado (nombre y versión).
Una tabla de archivos que describe el resto de archivos que componen el ensamblado, por ejemplo, otros ensamblados creados por el usuario de los que dependa el archivo .exe o .dll, e incluso archivos de mapa de bits o archivos Léame.
Una lista de referencias de ensamblado, es decir, una lista de todas las dependencias externas, archivos .dll u otros archivos necesarios para la aplicación que otros usuarios hayan podido crear. Las referencias de ensamblado contienen referencias a objetos globales y privados. Los objetos globales residen en la caché global de ensamblados, un área disponible para otras aplicaciones, parecida al directorio System32. El espacio de nombres Microsoft.VisualBasic es un ejemplo de un ensamblado en la caché global de ensamblados. Los objetos privados deben encontrarse en un directorio del mismo nivel o inferior al directorio de instalación de la aplicación.
Dado que los ensamblados contienen información sobre el contenido, la versión y las dependencias, las aplicaciones que se crean con Visual Basic y C# no dependen de los valores del Registro para que funcionen correctamente. Los ensamblados reducen los conflictos entre los archivos .dll y contribuyen a que las aplicaciones sean más confiables y más fáciles de implementar. En muchos casos es posible instalar una aplicación basada en .NET simplemente copiando los archivos de la aplicación en el equipo de destino.
Para obtener más información, vea Manifiesto del ensamblado.
Agregar una referencia a un ensamblado
Para utilizar un ensamblado, debe agregar una referencia a él, tal como se describe en Cómo: Agregar o quitar referencias utilizando el cuadro de diálogo Agregar referencia. A continuación, debe usar la instrucción Imports en Visual Basic o la directiva using en C# para elegir el espacio de nombres de los elementos que desee usar. Una vez que se haya hecho referencia a un ensamblado y se haya importado, todas las clases, propiedades, métodos y otros miembros accesibles de su espacio de nombres están disponibles para la aplicación como si su código formara parte del archivo de código fuente.
En C#, se pueden usar también dos versiones del mismo ensamblado en una sola aplicación. Para obtener más información, vea alias externo (Referencia de C#).
Crear un ensamblado
Para compilar la aplicación, haga clic en Generar en el menú Generar o bien genérela desde la línea de comandos, mediante el compilador de la línea de comandos. Para obtener información detallada sobre la compilación de ensamblados desde la línea de comandos, vea Compilar desde la línea de comandos (Visual Basic) para Visual Basic y Compilar la línea de comandos con csc.exe para C#.
Vea también
Tareas
Cómo: Compartir un ensamblado con otras aplicaciones (C# y Visual Basic)
Cómo: Cargar y descargar ensamblados (C# y Visual Basic)
Cómo: Determinar si un archivo es un ensamblado (C# y Visual Basic)
Cómo: Crear y utilizar ensamblados desde la línea de comandos (C# y Visual Basic)
Tutorial: Incrustar los tipos de los ensamblados administrados (C# y Visual Basic)
Tutorial: Incrustar información de tipos de los ensamblados de Microsoft Office (C# y Visual Basic)
Conceptos
Ensamblados de confianza (C# y Visual Basic)