首页
IT
登录
6mi
u
盘
搜
搜 索
IT
C#元数据
C#元数据
xiaoxiao
2021-04-18
58
元数据是一种二进制信息,用以对存储在公共语言运行库可移植
可执行文件 (PE) 文件
或存储在内存中的
程序
进行描述。将您的代码编译为
PE
文件时,便会将元数据插入到该文件的一部分中,而将代码转换
为
Microsoft
中间语言
(MSIL)
并将其插入到该文件的另一部分中。在模块或程序集中
定义和引用的每个类型和成员
都将在元数据中进行说明。当执行代码时,运行库将元数据加载到内存中,并引
用它来发现
有关代码的类、成员、继承
等信息。
元数据以非特定语言的方式描述在代码中定义的每一类型和成员。
元数据存储以下信息:
* 程序集的说明。 o 标识(名称、版本、区域性、公钥)。 o 导出的类型。 o 该程序集所依赖的其他程序集。 o 运行所需的安全权限。 * 类型的说明。 o 名称、可见性、基类和实现的接口。 o 成员(方法、字段、属性、事件、嵌套的类型)。 * 属性。 o 修饰类型和成员的其他说明性元素。
元数据的优点:
对于一种更简单的编程模型来说,元数据是关键,该模型
不再需要接口定义语言 (IDL) 文件
、头文件或任何外部组件引用方法。元数据允许
.NET
语言自动以非特定语言的方式对其自身进行描述,而这是开发人员和用户都无法看见的。另外,通过使用属性,可以对元数据进行扩展。元数据具有以下主要优点:
* 自描述文件。
公共语言运行库模块和程序集是自描述的。模块的元数据包含与另一个模块进行交互所需的全部信息。
元数据自动提供 COM 中 IDL 的功能,
允许将一个文件同时用于定义和实现。运行库模块和程序集甚至不需要向操作系统注册。结果,运行库使用的说明始终反映编译文件中的实际代码,从而提高应用程序的可靠性。
* 语言互用性和更简单的基于组件的设计。
元数据提供所有必需的有关已编译代码的信息,以供您从用不同语言编写的
PE
文件中继承类。您可以创建用任何托管语言(任何面向公共语言运行库的语言)编写的任何类的实例,而不用担心显式封送处理或使用自定义的互用代码。
* 属性。
.NET
Framework
允许您在编译文件中声明特定种类的元数据(称为属性)。在整个
.NET
Framework
中到处都可以发现属性的存在,属性用于更精确地控制运行时您的程序如何工作。另外,您可以通过用户定义的自定义属性向
.NET
Framework
文件发出您自己的自定义元数据。
转载请注明原文地址: https://ju.6miu.com/read-674933.html
技术
最新回复
(
0
)