阿里云飞天发布时刻,领先大模型限免,超7000万 tokens免费体验 了解详情
写点什么

Reflection API 因 Windows 商店应用作调整

  • 2012-09-13
  • 本文字数:819 字

    阅读完需:约 3 分钟

相对于完整的.NET 4.5 框架来说,用于Windows Store 应用的.NET API 子集则显得如此之小。 具体而言, Reflection.Emit 变得不可用,且 System.Type 类中的大多数成员也都被迁移到了 System.Reflection.TypeInfo 类中。

.NET 团队把 System.Type 分解成了两个类—— System.Reflection.TypeInfo 和一个简化的 System.Type ——主要意在将类型定义与类型引用分离。早在处理程序集时,就已采用了这种划分方法。 Brandon Bray 在《 Evolving the .NET Reflection API 》一文中解释到:

System.Reflection.Assembly 类代表的是程序集定义,而 System.Reflection.AssemblyName 类代表的是程序集引用。前者提供了丰富的功能集合,而后者只是数据,它可以帮助你得到想要的定义。这正是我们想为 System.Type 采用的模型。

Type 仅提供了对某一类型的引用,并未加载类型本身的所有元数据。所有丰富的信息都在 TypeInfo 中——对于给定的 Type,你可以通过该类型的 TypeInfo 来访问它的元数据。这种方式的优点是,访问 Type 对象的时候并不需要加载必要的程序集——仅当访问 TypeInfo 类的时候才需要。这意味着,是否需要加载程序集可以由开发者根据需要来控制。

为了保持更好的工作集和响应能力,Reflection API 也开始用 IEnumerable 类型来替代常见的数组类型的返回值。

兼容性:新的 Reflection API 中的这种改变并非破坏性的——Windows Store 中的应用必须使用新模型,而对于以.NET 4.5 框架为目标的代码而言,早期的.NET 4.0 模型和新模型皆可使用。为了实现这一点,.NET 框架使用的类型层次结构稍微有点不同。假如你想在.NET 4.5 和 Windows Store 应用之间复用代码的话,微软建议你将其包装为一个可移植的类库

查看英文原文 Reflection API Changes For Windows Store Apps


感谢贾国清对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2012-09-13 21:281241
用户头像
臧秀涛 略懂技术的运营同学。

发布了 300 篇内容, 共 143.4 次阅读, 收获喜欢 35 次。

关注

评论

发布
暂无评论
发现更多内容

HarmonyOS Next 中的 HAP、HAR、HSP 区别

万少

鸿蒙

三文带你轻松上手鸿蒙的 AI 语音 01-实时语音识别

万少

鸿蒙

HarmonyOS Next 浅谈 发布-订阅模式

万少

鸿蒙

三文带你轻松上手鸿蒙的 AI 语音 02-声音文件转文本

万少

鸿蒙

三文带你轻松上手鸿蒙的 AI 语音 03-文本合成声音

万少

鸿蒙

HarmonyOS Next V2 @Event

万少

鸿蒙

HarmonyOS Next V2 状态管理实战

万少

鸿蒙

HarmonyOS Next 动画大全 01-属性动画

万少

鸿蒙

用友 BIP 超级版:解锁数智研发管理新势能

用友BIP

用友 企业数智化 用友BIP 企业数智化转型

手把手带你实现 鸿蒙应用-键盘音乐

万少

鸿蒙

HarmonyOS Next 并发 taskpool 和 worker

万少

鸿蒙

HarmonyOS Next 简单上手元服务开发

万少

鸿蒙

HarmonyOS Next V2 状态管理 AppStorageV2 和 PersistenceV2

万少

鸿蒙

HarmonyOS Next 动画大全 03-帧动画

万少

鸿蒙

HarmonyOS Next 设计模式-单例模式

万少

鸿蒙

HarmonyOS Next 开发的艺术 面向对象

万少

为什么你的团队会抵制变化

Bruce Talk

敏捷开发 系统思考

企业智能之旅(6):安全与负责任的人工智能

亚马逊云科技 (Amazon Web Services)

Easysearch Java SDK 2.0.x 使用指南(一)

极限实验室

Java 索引 easysearch

HarmonyOS Next 关于页面渲染的性能优化方案

万少

鸿蒙

HarmonyOS Next 关于页面渲染的性能优化方案

万少

鸿蒙

企业智能之旅(5):人工智能基础模型的选择与评估

亚马逊云科技 (Amazon Web Services)

《Django 5 By Example》阅读笔记:p551-p560

codists

Python django

HarmonyOS Next V2 @Local 和@Param

万少

鸿蒙

HarmonyOS Next V2 @Monitor 和@Computed

万少

鸿蒙

计算机视觉中的图像特征提取技术详解

芯动大师

CNN 机器视觉 图像特征

HarmonyOS Next 如何优雅的编写注释

万少

HarmonyOS Next V2 状态管理@ObservedV2 基本使用

万少

鸿蒙

HarmonyOS Next 动画大全 02-显式动画

万少

鸿蒙

Reflection API因Windows商店应用作调整_.NET_Roopesh Shenoy_InfoQ精选文章