Tuesday, March 16, 2010

What is an Assembly?

The .NET assembly is the standard for components development with the Microsoft.NET. Dot NET assemblies may or may not be executable, i.e., they might exist as the executable (.exe) file or dynamic link library (DLL) file. All the .NET assemblies contain the definition of types, versioning information for the type, Meta – data, and manifest.
An assembly can be a single file or it may consist of the multiple files. In case of multi – file, there is one master module containing the manifest while other assemblies exist as non – manifest modules. A module in .NET is a sub part of a multi – file .NET assembly. Assembly is one of the most interesting and extremely useful areas of .NET architecture along with reflections and attributes.
The program compilation results in creating an assembly, which can be either an .exe file (executable) or a .dll file (library). An assembly contains:
I). the manifest that contains the metadata, which provides the following information:
     a) Versioning information. The versioning information contains four parts: major versions, minor version, build number, and revision number (for example, 1.0.32.72005)
     b) Security information
     c) External assembly references
     d) Exported types
     e) Culture information (the national language such as English, French, or Chinese)
     f) Custom attributes such as company name and product information
II) One or more module of MSIL code
III) The resources used by the application

No comments:

Post a Comment