Assemblies in .NET
An assembly is a basic unit for deployment, versioning, and security. Assemblies come in two forms, either as an executable file (.exe
) or a dynamic-linked library (.dll
). An assembly is a collection of types, resources, and meta-information that forms a logical unit of functionality. Assemblies are loaded into memory only if needed. For .NET Framework applications, assemblies could either be located in the application private folder or shared in the Global Assembly Cache, provided they are strongly-named. For .NET Core applications, this latter solution is not available.
Each assembly contains a manifest that contains the following information:
- The identity of the assembly (such as name and version)
- A file table describing the files that make up the assembly, such as other assemblies or resources (such as images)
- A list of assembly references that contains the external dependencies that the application needs
The identity of an assembly...