What is Microsoft .Net Metadata
Metadata in .NET encompasses a wealth of vital binary information that serves to articulate the intricate characteristics and attributes of a given resource. This encompassing wealth includes, but is not limited to, a comprehensive depiction of the assembly, the exhaustive detailing of data types and their corresponding members, encompassing both declarations and implementations. Furthermore, it encompasses references to other types and members, along with security permissions and more. Essentially, the module's metadata becomes an indispensable repository that harbors every essential piece of information required to facilitate seamless interactions with other modules.
Microsoft Intermediate Language (MSIL)
During the compilation process, the astute generation of metadata is realized through the employment of Microsoft Intermediate Language (MSIL), a purposeful binary representation. This metadata is then diligently stored within a file aptly referred to as a Manifest. As a cohesive amalgamation, the encompassing metadata and Microsoft Intermediate Language (MSIL) are ensconced within a Portable Executable (PE) file, constituting a harmonious whole. As a program is executed, the runtime environment enlists the services of the Just-In-Time (JIT) compiler, a quintessential component of the Common Language Runtime (CLR). It relies on the rich repository of metadata to dynamically convert Microsoft Intermediate Language (MSIL) instructions into native code, facilitating efficient and effective execution.
Once the code springs into action, the runtime diligently loads the meticulously crafted metadata into the recesses of memory, serving as an invaluable resource to unravel pertinent information concerning the classes, members, inheritance hierarchies, and beyond. This meticulous process effectively obviates the necessity for external artifacts such as Interface Definition Language (IDL) files, header files, or any other external means of referencing components. In doing so, metadata emerges as the embodiment of self-sufficiency, negating the need for convoluted external dependencies.