使用MEF构建可扩展的Silverlight应用

“托管扩展性框架(Managed Extensibility Framework,简称MEF),是微软 .NET框架下为提高应用和组件复用程度而推出的,用于使组件能够最大化的重用 。使用MEF能够使静态编译的.NET应用程序转换为动态组合,这将是创建可扩展应 用、可扩展框架和应用扩展的好途径。它将做为.NET Framework 4.0的组成部分 之一发布。现在,MEF也将被包含在Silverlight 4.0中。

那么MEF是怎样工作的呢?简单分为三个步骤:

Export (输出)

Import (输入)

Compose (组合)

简短说一下MEF的工作原理,MEF的核心包括一个catalog和一个 CompositionContainer。category用于发现扩展,而container用于协调创建和梳 理依赖性。每个可组合的Part提供了一个或多个Export,并且通常依赖于一个或 多个外部提供的服务或 Import。每个Part管理一个实例为应用程序运行。

时间: 2024-10-29 04:07:34

使用MEF构建可扩展的Silverlight应用的相关文章

构建可扩展的Java EE应用(一)

对于一个具备使用价值的应用而言,其使用者有可能会在一段时间内疯狂的增 长.随着越来越多的关键性质的应用在Java EE上运行,很多的Java开发者也开始 关注可扩展性的问题了.但目前来说,大部分的web 2.0站点是基于script语言编 写的,对于Java应用可扩展能力,很多人都抱着质疑的态度.在这篇文章中, Wang Yu基于他本身在实验室项目的经验来展示如何构建可扩展的java应用,同时 ,基于一些在可扩展性上做的比较失败的项目给读者带来构建可扩展java应用的 实践.理论.算法.框架和经

Asp.net 构建可扩展的的Comet Web 应用(二)

说明 如果你已经阅读了我之前的一篇文章<Asp.net构建可扩展的的Comet Web 应用>.你应该能够理解我将要写的内容.我解释了Comet技术并且解释了怎样用asp.net构建具有可扩展性的应用.然而,我认为之前的的一篇文章写得有点像主线.它展示了足够的技术,但是没有足够包含任何有用的代码.因此,我想我需要写一个API来将之前一篇文章中的功能封装起来.封装为一系列整齐的类,让它们可以被包含到一个通常的web项目中,给你机会去扩展和测试它. 我将不涉及太多关于线程模型的具体细节.因为在之前

使用React + Redux + React-router构建可扩展的前端应用

现在是前端开发最好的时代,有太多很好的框架和工具帮你更好的实现复杂需求;同时又是最困难的时代,因为需要掌握太多的框架和工具.如何利用好各种框架来提高前端开发质量是大家都在探索的问题.本文就将介绍如何使用 React 及其相关技术,来进行实际前端项目的开发.因为主要介绍如何将技术用于实践,所以希望读者已经对相关概念已经有一定的了解. 本文最初来源于笔者在 StuQ 的一次同名课程直播,现在加以整理成文,希望能对更多的人有所启发.为了固化这种实践方式,当时还开发了一个名为 Rekit 的工具,用于确

建立可扩展的silverlight 应用框架 step-7 final

建立可扩展的silverlight 应用框架 step-1 建立可扩展的silverlight 应用框架 step-2 建立可扩展的silverlight 应用框架 step-3 建立可扩展的silverlight 应用框架 step-4 建立可扩展的silverlight 应用框架 step-5 建立可扩展的silverlight 应用框架 step-6 前六节的文章已经完全的记录这个项目的开发过程,其中第5节和第6节相隔的时间比较长,这期间我翻阅了大量的Prism官方文档以及网络上的资料,其

MEF程序设计指南二:Silverlight中使用CompositionInitializer宿主MEF

MEF可以在传统应用程序中使用(包括桌面的Winform.控制台程序和Web的ASP.NET),也可以在RIA的Silverlight中使用.在 Silverlight中只是宿主的方式有所不同,实际上在Silverlight中也可以像传统应用程序中是方式去宿主,MEF也为Silverlight提供了独 特的宿主方式,使用中需要引用 System.ComponentModel.Composition.Initialization.dll动态链接库. Silverlight中提供了一种新的宿主MEF

构建可扩展的Java图表组件

前言 Java语言所具有的面向对象特性,使许多复杂的问题可以分解成相对独立的对象来处理.本文用面向对象的方法,将一个图表组件从分解到如何组合,以及如何进行扩展作了详细的讲解.从简单的折线图到稍复杂的多种形状组合的图表,读者可以学到构建一个可扩展的图表组件是多么的容易. 常见的图表类型 图表具有很直观的视觉效果,可以方便的用来比较数据的差异.图案和趋势等. 从外观上来看,常用到的图表主要有散点图.(折)曲线图.柱状图等.本文主要讨论这几种图形样式.其中这每种图又可以与其它的类型组合产生更多的形式.

使用MEF方便的扩展应用程序

概述 Managed Extensibility Framework(MEF)是.NET平台下的一个扩展性管理框架,它是一系列特性的集合,包括依赖注入(DI)以及Duck Typing等.MEF为开发人员提供了一个工具,让我们可以轻松的对应用程序进行扩展并且对已有的代码产生最小的影响,开发人员在开发过程中根据功能要求定义一些扩展点,之后扩展人员就可以使用这些扩展点与应用程序交互:同时MEF让应用程序与扩展程序之间不产生直接的依赖,这样也允许在多个具有同样的扩展需求之间共享扩展程序. 简单依赖注入

Asp.net 构建可扩展的的Comet Web 应用(一)

说明 这篇文章用来提供在asp.net中使用comet的一种理论上的解决方案.它包含了Comet技术在服务端的实现以及怎样去解决可扩展的问题.我将在不久以后发表一般文章,使用我接下来要讲到的Comet 线程池技术演示一个小游戏,来提供客户端的代码.它可能会给你在真实的环境下解决问题带来一些思路. 简介 在过去的六个月里,我一直都在投入精力开发一个在线的象棋应用程序.它能够让玩家注册.登陆,并且像在真实世界中对弈一样.其中,我不得不克服的一个障碍就是,怎样在服务端和客户端实现一个类似在真实世界中的

WCF运行时框架的构建与扩展[共10篇]

WCF服务端运行时框架的构建 WCF服务端运行时架构体系详解[上篇] WCF服务端运行时架构体系详解[中篇] WCF服务端运行时架构体系详解[下篇] WCF服务端运行时架构体系详解[续篇] WCF客户端运行框架的构建 WCF客户端运行时架构体系详解[上篇] WCF客户端运行时架构体系详解[下篇] WCF扩展 通过"四大行为"对WCF的扩展[原理篇] 通过"四大行为"对WCF的扩展[实例篇] 通过自定义ServiceHost实现对WCF的扩展[原理篇] 通过自定义Se