首页 > 其他分享 >5月23日总结

5月23日总结

时间:2023-05-26 17:46:40浏览次数:39  
标签:总结 插件 MEF 23 Demo 文件夹 MAF Output

  1. 什么是MAF和MEF?

MEF和MEF微软官方介绍:https://learn.microsoft.com/zh-cn/dotnet/framework/mef/

MEF是轻量化的插件框架,MAF是复杂的插件框架。

因为MAF有进程隔离和程序域隔离可选。我需要插件进程隔离同时快速传递数据,最后选择了MAF。

如果不需要真正的物理隔离还是建议使用简单一点的MEF框架。
2. 如何学习MAF?

MAF其实是一项很老的技术,入门我看的是《WPF编程宝典》第32章 插件模型。里面有MAF和MEF的详细介绍和许多样例。

但是要深入理解还是看了很多其他的东西,下面我详细说明,我自己理解和总结的MAF。
3. MAF框架入门
3.1 MAF框架构成与搭建

MAF框架模式是固定的,这里做一个详细介绍。

首先是要添加几个新项目,下图中不包含主项目。

Addin文件夹是放置插件用的,其余都是必要项目。

假设HostView项目和主项目的输出路径是..\Output\

然后修改每个项目的输出文件夹,例如AddInSideAdapter项目输出路径可以设置为..\Output\AddInSideAdapters\

注意插件项目输出到Addin文件夹中的子文件夹是....\Output\AddIns\MyAddin\

最后项目的输出文件夹结构是:

D:\Demo\Output\AddIns

D:\Demo\Output\AddInSideAdapters

D:\Demo\Output\AddInViews

D:\Demo\Output\Contracts

D:\Demo\Output\HostSideAdapters

来看看MAF框架模型构成。

上图中绿色的是被引用蓝色项目所引用。例如HostSideAdapter就要引用Contract和Hostview,如下图所示。

标签:总结,插件,MEF,23,Demo,文件夹,MAF,Output
From: https://www.cnblogs.com/lmyy/p/17435406.html

相关文章

  • 5月22日总结
    深入理解apply()方法apply(thisArg)apply(thisArg,argsArray)thisArg在func函数运行时使用的this值。请注意,this可能不是该方法看到的实际值:如果这个函数处于非严格模式下,则指定为null或undefined时会自动替换为指向全局对象,原始值会被包装。argsArray可选一个......
  • 5月26日总结
    ArcMap手动新建矢量要素的方式合集-GIS空间分析(7)1.地统计学的基本概念及公式详解04-242.单窗算法的地表温度反演:谷歌地球引擎GEE代码04-263.SPSS计算极值、平均值、中位数、方差、偏度、峰度、变异系数05-084.Python忽略NoData计算多张遥感影像的像元平均值:whitebox库......
  • 5月25日总结
    列表分类是指在Word文档中使用不同格式排序的列表,来帮助我们一目了然地表达出一段文字的主要内容。比如,当我们描述了某个主题的若干点,就可以用列表把它们一一表达出来,而不是写成完整的段落形式。同时,列表也可以帮助我们做出精确的计算和比较,简洁有效地表示出不同部分之间的关系。......
  • 5月24日总结
    MAUIAndroid关联文件类型实现效果打开某个文件,后缀是自己想要的类型,在弹出的窗口(用其它应用打开)的列表中显示自己的应用图标点击后可以获得文件信息以便于后续的操作用其它应用打开实现步骤以注册.bin后缀为例,新建一个MAUI项目调整启动模式修改Platforms\Android\M......
  • 2023.5.26编程一小时打卡
    一、问题描述:定义复数类MyComplex,主函数完成相关测试。MyComplex类结构说明:1、数据成员包括:私有数据成员:实部x(double)虚部y(double)。2、成员函数包括:无参构造函数MyComplex(void),其功能是将数据成员数部和虚部的值均设为0;有参构造函数MyComplex(doublevalue1,doublevalue2),其功能......
  • Spring StateMachine状态机总结
    参考文档:https://blog.51cto.com/u_6346066/5271543https://mp.weixin.qq.com/s?__biz=MzI2MTIzMzY3Mw==&mid=2247540203&idx=1&sn=0855be65db7b01efab77a40b5d0ecc97&chksm=ea5f908ddd28199bb73ebcbcf44970039a574ba4b102e5c4518dad6a96237cbdafab7e4f5938&......
  • 线段树学习总结
    线段树入门线段树的概念线段树是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单元区间,每个单元区间对应线段树中的一个叶结点。使用线段树可以快速的查找某一个节点在若干条线段中出现的次数,时间复杂度为O(logN)。而未优化的空间复杂度为2N,实际应用时一般还要开4N的数组......
  • 总结MySQL 的一些知识点:MySQL 连接的使用
    MySQL连接的使用在前几章节中,我们已经学会了如何在一张表中读取数据,这是相对简单的,但是在真正的应用中经常需要从多个数据表中读取数据。本章节我们将向大家介绍如何使用MySQL的JOIN在两个或多个表中查询数据。你可以在SELECT,UPDATE和DELETE语句中使用Mysql的JOI......
  • 【2023最新】超详细图文保姆级教程:App开发新手入门(6)
    9.编译正式版 本章我们简单介绍一下如何设置应用的桌面图标及应用的启动页 通过之前章节的学习,我们已经完成了一个简单应用的开发,本部分章节主要目的是为本系列教程进行一个整体性的收尾,简介讲解一下如何编译一个可用于上架应用市场的正式版安装包。(本章内容超级简单......
  • 2023最新多端社交圈子系统源码 | 陌生人社交 | 即时聊天通信 | 小程序+H5+PC+APP等多
     DUOKE多客圈子论坛社区系统,含完整的后台PHP系统。功能:小程序授权登陆,H5和APP,手机号登陆,发帖,建圈子、发活动。圈主可置顶推荐帖子,关注、粉丝、点赞等。可作为圈子贴吧、小红书等自媒体。下载地址直接点击群聊插件单独频道功能说明:1、可申请建群。后台审核,2、群分为自由加入......