The common language runtime (CLR) domain (the System_Runtime Schema in SQL Server) contains extents, types, and constraints that taken together represent .NET Framework metadata that can be used for many development and software management scenarios. The SQL Server Modeling CTP also contains a tool, LoadAssembly.exe, that can extract metadata from .NET Framework assemblies and insert that metadata into the System_Runtime domain models in the SQL Server Modeling Services. Once there, .NET Framework metadata can be queried and manipulated to provide information across an entire enterprise.
|In this release, the majority of the System_Runtime domain is marked as read-only in Microsoft code name “Quadrant”.|
Overview and Walkthrough
The CLR domain contains models that represent .NET Framework assembly metadata, such as assembly and type information. The models are useful for, among other things:
Browsing or searching for managed information.
Analyzing metadata for dependencies and the impact of modifications.
Future data mining.
Browsing and Searching .NET Framework Metadata
Development managers, architects, and developers frequently need to examine managed metadata to do their daily work, using Visual Studio or other tools to examine assemblies and display structural information, such as inheritance trees or embedded resources, to find the data that enables them to do their work efficiently and well. Each additional assembly added to current reflection engines, however, tends to reduce the response time of the tools, which in turn reduces the immediate usefulness of information. In an environment with hundreds or thousands of managed components, obtaining metadata information in a useful fashion becomes difficult.
Using the LoadAssembly.exe Command Line Reference tool, you can reflect over very large numbers of assemblies and load that assembly and type information into the SQL Server Modeling Services System_Runtime Schema domain models, enabling developers and development managers to examine huge amounts of metadata across a project, division, or enterprise and extract valuable information quickly and easily. In addition, because the SQL Server Modeling Services is a SQL Server 2008 database, you can use your favorite tool or language to obtain the information you want. For example, it might be useful to discover how many public types are exposed in a particular subset of components or across an entire enterprise.
For a demonstration of how to use the System_Runtime domain and the associated tools, see Walkthrough: Using the System_Runtime Domain.