Question { Wipro, 20245 }
Explain manifest & metadata.
Answer
manifest
Every assembly, whether static or dynamic, contains a
collection of data that describes how the elements in the
assembly relate to each other. The assembly manifest
contains this assembly metadata. An assembly manifest
contains all the metadata needed to specify the assembly's
version requirements and security identity, and all
metadata needed to define the scope of the assembly and
resolve references to resources and classes. The assembly
manifest can be stored in either a PE file (an .exe
or .dll) with Microsoft intermediate language (MSIL) code
or in a standalone PE file that contains only assembly
manifest information.
Metadata
Metadata is binary information describing your program that
is stored either in a common language runtime portable
executable (PE) file or in memory. When you compile your
code into a PE file, metadata is inserted into one portion
of the file, while your code is converted to Microsoft
intermediate language (MSIL) and inserted into another
portion of the file. Every type and member defined and
referenced in a module or assembly is described within
metadata. When code is executed, the runtime loads metadata
into memory and references it to discover information about
your code's classes, members, inheritance, and so on.