Metadata Tables, 元数据表
引言:
怎么着,用.Net开发也好久了. 俺虽然天资不高,不能过目不忘,勤奋点记下来还是可以的. 备忘 :).
数据来自, From 《.Net 加密与解密》 Append A,与ECMA校对基本无误
名称与功能的对应:
表名称 | 功能描述 |
Module | 定义模块 |
TypeRef | 描述引用类型 |
TypeDef | 定义类型或者接口 |
FieldPtr | 在非优化的元数据表中,定义累中的字段时的中间查找表 |
Field | 定义字段 |
MethodPtr | 在非优化的元数据表中,在定义类的方法时的中间查找表 |
Method(MethodDef) | 定义方法 |
ParamPtr | 非优化的元数据表中,在定位方法的参数时的中间查找表 |
Param | 定义方法参数 |
InterfaceImpl | 定义类与所实现的接口 |
MemberRef | 定义引用的方法或字段 |
Constant | 定义#Blob流中存储的常数值与相应的字段, 参数或属性的关系 |
CustomAttribute | 定义自定义属性 |
FieldMarshal | 定义托管与非托管的互操作时的参数或字段的Marshal操作 |
DeclSecurity | 定义安全码 |
ClassLayout | 描述与类被加载时应如何布局的信息 |
FieldLayout | 描述了单个字段的偏移或是序号 |
StandAloneSig | 用于定义本地变量或间接调用(calli)的签名 |
EventMap | 类到事件的映射表,不是中间查找表(区别于Ptr结尾的表) |
EventPtr | 非优化的元数据表中,定位事件的中间查找表 |
Event | 定义事件 |
PropertyMap | 类到属性的映射表 |
PropertyPtr | 非优化的元数据表中,定位属性时的中间查找表 |
Property | 定义属性 |
MethodSemantics | 描述方法与事件或属性的关联,以及如何关联 |
MethodImpl | 描述方法的重载 |
ModuleRef | 描述引用模块 |
TypeSpec | 定义type specification(构造函数,指针,数组等) |
ImplMap | 托管与非托管的互操作时的P/Invoke操作 |
FieldRVA | 定义字段到数据的映射关系 |
ENCLog | 在 Edit-and-continue模式中用于描述那些元数据被修改过 |
ENCMap | 在 Edit-and-continue模式中描述映射 |
Assembly | 定义当前程序集 |
AssemblyProcessor | 无 |
AssemblyOS | 无 |
AssemblyRef | 引用程序集 |
AssemblyRefProcessor | 无 |
AssemblyRefOS | 无 |
File | 描述当前程序集中的其他文件 |
ExportedType | 仅存在于程序集主模块中,描述程序集中其他模块定义的导出类 |
ManifestResource | 描述托管资源 |
NestedClass | 描述嵌套定义类及相应的包含类 |
GenericParam | 描述泛型类或泛型方法的类型参数 |
MethodSpec | 描述泛型方法的实例化 |
GenericParamConstraint | 描述泛型类或泛型方法的类型参数的相应限制 |
还不够详细? 老大,你还真寻根究底。。。
好吧,看这里: Standard ECMA-335 Page: 229 / Expert IL 2.0 Assembler
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述