- Back to Home »
- .NET »
- Assemblies
Posted by :
Sudhir Chekuri
Tuesday, 29 December 2015
An assembly is a logical unit of functionality.
In .NET when an application is compiled into MSIL code that MSIL code is stored in an assembly. CLR requires assemblies to execute. Every time you build an application, you're building assemblies. Example: .exe or .dll file.
exe stands for executable file.
dll stands for dynamic link library.
exe is a self-executable file which can consume dll file.
dll is a supportive file for exe applications.
They are files that can be deployed.
There are two types of applications:
1. Private or local assemblies
2. Public or shared or global assemblies.
1. Private assemblies
If an assembly is copied into the every application in which we want to use the assembly then it is known as private or local assembly. Private assemblies cannot to be used without copying them in the project which it has to be used.
2. Public assemblies
If an assembly is copied into global location i.e., In GAC (Global assembly cache) to use it in multiple applications by adding the reference of that assembly without copying the actual dll in the project is known as public or shared or global assembly.
When .NET framework is installed in a computer, assemblies that are designed to be shared by multiple applications will be installed in global assembly cache (GAC). Physical location for GAC is C:\Windows\assembly.
Contents of Assembly
Assembly contains Meta data and MSIL code.
In Meta data three things will be present. They are assembly manifest, type meta data and resources.
Assembly manifest
It contains information about the assembly name, version, and security key.
Type meta type
This section contains information about all types used in the source code of assembly.
Resources
This section contains details of external resources used in the assembly.
Example: Multimedia files used in the assembly.
About Meta data: Data about data is known as Meta data.
In .NET when an application is compiled into MSIL code that MSIL code is stored in an assembly. CLR requires assemblies to execute. Every time you build an application, you're building assemblies. Example: .exe or .dll file.
exe stands for executable file.
dll stands for dynamic link library.
exe is a self-executable file which can consume dll file.
dll is a supportive file for exe applications.
They are files that can be deployed.
There are two types of applications:
1. Private or local assemblies
2. Public or shared or global assemblies.
1. Private assemblies
If an assembly is copied into the every application in which we want to use the assembly then it is known as private or local assembly. Private assemblies cannot to be used without copying them in the project which it has to be used.
2. Public assemblies
If an assembly is copied into global location i.e., In GAC (Global assembly cache) to use it in multiple applications by adding the reference of that assembly without copying the actual dll in the project is known as public or shared or global assembly.
When .NET framework is installed in a computer, assemblies that are designed to be shared by multiple applications will be installed in global assembly cache (GAC). Physical location for GAC is C:\Windows\assembly.
Contents of Assembly
Assembly contains Meta data and MSIL code.
In Meta data three things will be present. They are assembly manifest, type meta data and resources.
Assembly manifest
It contains information about the assembly name, version, and security key.
Type meta type
This section contains information about all types used in the source code of assembly.
Resources
This section contains details of external resources used in the assembly.
Example: Multimedia files used in the assembly.
About Meta data: Data about data is known as Meta data.