Assemblies are the basic building blocks required for any application to function in the .NET realm. They are partially compiled code libraries that form the fundamental unit of deployment, versioning, activation scoping, reuse, and security. Typically, assemblies provide a collection of types and resources that work together to form a logical unit of functionality. They are the smallest deployable units of code in .NET. Compared to the executable files assemblies are far more reliable, more secure, and easy to manage. An assembly contains a lot more than the Microsoft Intermediate Language (MSIL) code that is compiled and run by the Common Language Runtime (CLR). In other words, you can say that an assembly is a set of one or more modules and classes compiled in MSIL, and metadata that describes the assembly itself, as well as the functionalities of the assembly classes.
What does an assembly contain?
An assembly contains following information:
Assembly manifest: Information about the assembly.
Type metadata: Information about the types.
An assembly manifest contains the following information:
Identity of the assembly
Types and resources
The AssemblyInfo.cs file stores the assembly configuration information and other information, such as the assembly name, version, company name, and trademark information. (True/False).
Explain the concepts and capabilities of Assembly in .NET.
An assembly is a collection of files (dll’s, exe’s), group of resources that help in creating a logical unit of functionality. It forms the basic building block for deployment, reusability and security issues.
It provides a CLR environment.
It helps in maintaining security as it grants grant or denial of permissions.
When an application starts only assemblies the application initially calls must be present.
Assemblies can be either static or dynamic.
Assemblies help in resolving versioning issues.
Name the different components of an assembly.
An assembly is a logical unit that is made up of the following four different types of components: