AICon 上海站|日程100%上线,解锁Al未来! 了解详情
写点什么

托管扩展性框架发布 Preview 4 版本

  • 2009-02-12
  • 本文字数:952 字

    阅读完需:约 3 分钟

微软的

托管扩展性框架(Managed Extensibility Framework,MEF)是一个托管在CodePlex 上的开源(MS-PL).NET 应用程序组合框架。MEF 主要提供了两方面内容:一个插件模型和一个控制反转容器。

MEF 目前还处于开发阶段,alpha 版本,不过它的目标是使应用程序和组件能够尽可能的复用。这个想法使一个应用程序从“静态编译”转变为“动态组合”。传统的控制反转容器对于特定需求一般采用“向内关注”的模式,例如某个类需要一个日志记录器和一个事物上下文。而 MEF 更像一个插件提供者,“向外关注”于扩展点的释放。

  • 诊断功能上的增强——当组合错误发生时将提供更多的错误信息。
  • (创建期)生存策略的增强——导入器(Importer)能够为一个注入的对象请求一个特别的创建策略。现在,不能销毁(Non-disposable)且不共享的对象能够在容器销毁之前被垃圾收集器释放,之前的问题在于此类对象会被容器永久保留。
  • 去除 AllowNonPublicCompositionAttribute——私有和内部的成员现在同样允许注入。
  • 命名空间的清理——System.ComponentModel.Composition 中添加了两个新的命名空间:“.Hosting”和“.Primitives”。“Hosting 命名空间包含了托管应用程序时所需的常用类型,例如 ExportProvider、CompositionContainer 以及各种 Catalog。Primitives 命名空间包含了实现自定义编程模型的类型,例如 ComposablePart、ImportDefinition 和 ExportDefinition。”
  • 类型名的清理——许多类型名称被缩短了,这会造成破坏性的改变:
    • ComposablePartCatalog 及相关类型从 System.ComponentModel.Composition 移动至 System.ComponentModel.Composition.Primitives。
    • AttributedTypesPartCatalog 改名为 TypeCatalog
    • AttributedAssemblyPartCatalog 改名为 AssemblyCatalog
    • DirectoryPartCatalog 改名为 DirectoryCatalog
    • AggregatingComposablePartCatalog 改名为 AggregateCatalog
    • Catalog Caching 扩展 API 作了内部修改。
  • 更新了示例应用程序:
    • Meflook——类似 Outlook 的客户端
    • Meftris——类似俄罗斯方块的游戏,每种形状作为插件提供
    • Extensible File Explorer——文件浏览器,拥有可扩展的视图,收藏文件浏览器,以及 Shell 服务。

要使用托管扩展性框架进行开发需要.NET Framework 3.5 和 Visual Studio 2008。

查看英文原文: Managed Extensibility Framework Preview 4

2009-02-12 01:151432
用户头像

发布了 157 篇内容, 共 57.7 次阅读, 收获喜欢 6 次。

关注

评论

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

强大的OCR技术+多元的用户场景 口碑型App白描的开发之路

百度大脑

人工智能 OCR 视障

数字资产多链钱包搭建,区块链多币种钱包

13530558032

Python实现发送邮件(实现单发/群发邮件验证码)

Python研究者

8月日更

联邦计算能力,让企业异构数据源数据合作畅通无阻

星环科技

异构数据 联邦计算

七月速递:人脸特征值同步私有化部署包发布、EdgeBoard车辆分析软硬一体方案助力交通管理智能化

百度大脑

人工智能 EdgeBoard 软硬一体

Go- 字符串、切片和数组的使用

HelloBug

数组 字符串 Go 语言 切片

关于开发视图

编程三昧

8月日更 开发视图

盲盒星球系统开发

(王经理)专业app小程序开发

易灸灸系统开发

(王经理)专业app小程序开发

架构设计系列一 架构方法论的入门

nydia

架构学习

学生管理系统架构设计

晓波

架构实战营

Cron调度任务入门

devpoint

crontab 8月日更

Vue进阶(七十):了解 webpack 的 hash、chunkhash、contenthash

No Silver Bullet

Vue 8月日更

架构实战之微信业务架构|学生管理系统

Nico

架构实战营

RocketMQ-学习记录

春秋易简

初学架构师养成の微信业务架构分析&学生管理系统架构

Yina🌝很浪🌊

架构

现货量化策略系统开发,量化软件开发

13530558032

美团年货-2020年(记录)

春秋易简

读书笔记 -《数据密集型应用系统设计》-索引

KayTin

fil挖矿收益如何?fil挖矿一天可以挖多少?

区块链 分布式存储 IPFS fil挖矿 filecoin收益

02. 到底什么是人工智能

Databri_AI

人工智能

阿里P8整理的《百亿级并发系统设计》实战教程,实在是太香了

Java~~~

Java 架构 面试 多线程 高并发

大专的我狂刷29天“阿里内部面试笔记”最终直接斩获十七个Offer

Java~~~

Java 架构 面试 JVM 多线程

女巫面具软件开发

(王经理)专业app小程序开发

赋能生态,合力同行!博睿数据成为光合组织成员单位

博睿数据

吃透这份Github点赞120k的Spring全家桶笔记Offer拿到手软

Java~~~

Java spring 架构 面试 Spring Cloud

云行、数治、慧用 打造直抵基层的数字化高速公路

云计算

为什么要了解复杂科学?

石云升

8月日更

太厉害了,终于有人把TCP-IP协议整合成864页学习笔记了

Java~~~

Java 架构 面试 TCP 网络

四面字节跳动Java研发岗,最终拿下Offer,只有努力,方能成功

Java~~~

Java 架构 面试 微服务 架构师

让 KAS 给 GitOps 插上腾飞的翅膀

极狐GitLab

Kubernetes 极狐GitLabs

托管扩展性框架发布Preview 4版本_.NET_Al Tenhundfeld_InfoQ精选文章