当前位置: 首页 > wzjs >正文

什么可以放置网站内容做互联网项目怎么推广

什么可以放置网站内容,做互联网项目怎么推广,建站公司最新排名,辽宁建设工程信息网 管网MEF核心笔记MEF 的开发模式主要适用于插件化的业务场景中,C/S 和 B/S 中都有相应的使用场景,其中包括但不限于 ASP.NET MVC 、ASP WebForms、WPF、UWP 等开发框架。当然,DotNet Core 也是支持的。 以下是搜索到一些比较好的博文供参考&#…

MEF核心笔记MEF 的开发模式主要适用于插件化的业务场景中,C/S 和 B/S 中都有相应的使用场景,其中包括但不限于 ASP.NET MVC 、ASP WebFormsWPFUWP 等开发框架。当然,DotNet Core 也是支持的。

以下是搜索到一些比较好的博文供参考:

MEF核心笔记

《MEF程序设计指南》博文汇总

先上效果图

一、新建解决方案

开始新建一个解决方案Mef,再添加一个winform项目为:MefDemo

如图:

打开Form1窗口,拉入MenuStrip菜单控件,把name改名为"ms",菜单控件什么菜单都不加,如下图:

接着双击窗口写如下代码:

private void Form1_Load(object sender, EventArgs e){ToolStripMenuItem item = new ToolStripMenuItem("插件");ms.Items.Add(item);foreach (IPlugin plugin in plugins){ToolStripMenuItem subItem = new ToolStripMenuItem(plugin.Text);subItem.Click += (s, arg) => { plugin.Do(); };item.DropDownItems.Add(subItem);}}

在继续写一个初始化插件代码:

private CompositionContainer _container;private void Init(){//设置目录,让引擎能自动去发现新的扩展var catalog = new AggregateCatalog();catalog.Catalogs.Add(new DirectoryCatalog(AppDomain.CurrentDomain.BaseDirectory+"plugin\\"));//创建一个容器,相当于是生产车间_container = new CompositionContainer(catalog);//调用车间的ComposeParts把各个部件组合到一起try{this._container.ComposeParts(this);//这里只需要传入当前应用程序实例就可以了,其它部分会自动发现并组装}catch (CompositionException compositionException){Console.WriteLine(compositionException.ToString());}}

Form1构造函数加入Init方法,程序刚启动时会从运行目录下plugin目录搜索所有dll文件并加载,plugin就是插件目录,所有插件都放到这个目录下

public Form1(){InitializeComponent();Init();}

二、新建接口类库PluginInterface

现在来创建一个接口项目(PluginInterface),它就像数据线或电源线一样,一端连接终端(手机、电脑),一端插到插座(电脑USB接口、插排),完全可以相像一下,手机在电脑充电的情形(它就需要一条数据线,一端连手机,一端连电脑)。

再新建一个接口IPlugin

public interface IPlugin{string Text { get; } //插件名称void Do(); //动作}

现在回到主程序,打开Form1窗口,写上如下代码:

需要引用System.ComponentModel.Composition

[ImportMany]public IEnumerable<IPlugin> plugins;

三、新建插件类库

现在可以来开发一个插件,为了方便,我在同一解决方案下创建,创建了一个Plugin1类库

再类库下新建一个类MyPlugin并实现IPlugin,有一点要注意,需要把MyPlugin命名空间改成和主程序一样

namespace MefDemo
{[Export(typeof(IPlugin))]public class MyPlugin:IPlugin{public string Text{get { return "插件1"; }}public void Do(){MessageBox.Show(Text);}}
}

同样的方法再创建2个插件类库,分别是Plugin2、Plugin3(winform)

插件类库编译后,复制dll到主程序plugin目录下

Demo下载

参考文章:[MEF插件式开发] 一个简单的例子 - 李子深 - 博客园

http://www.dtcms.com/wzjs/400253.html

相关文章:

  • wordpress 文章型seo优化大公司排名
  • 公司海外网站建设企业文化内容范本
  • 网站定制化价格珠海优化seo
  • 昊客网络360优化大师官方下载手机
  • 新手如何做服装网站网络营销与传统营销有哪些区别
  • 美女做暖暖的视频网站破解版刷外链工具
  • 做网站一般要多少钱如何优化关键词
  • ps做网站的时候分辨率是广州seo公司推荐
  • 传单设计网站百度网盘app官网下载
  • 南京市工程建设交易中心网站网站的营销推广
  • 武汉网站建设推广网络营销技术
  • wordpress做教育网站seo排名哪家公司好
  • 自己做影视网站怎么找代理商seo入门基础教程
  • 电商网站建设收费报个计算机培训班多少钱
  • wordpress网站好做排名吗网站排名推广工具
  • 外贸自建网站免费网页在线客服系统
  • seo整站优化+WordPress品牌网络营销案例
  • 工厂招聘信息电商运营seo
  • 旅行网站首页模板百度推广手机app下载
  • 欧美化妆品网站模板seo网站优化软件
  • 高端网站设计公司排行榜市场调研的内容
  • 洛阳市副市长到省建设厅网站百度客服
  • wordpress wp terms自动app优化最新版
  • 做3d模型的叫什么牛的网站腾讯新闻发布平台
  • 手机版 网站建设网站seo 工具
  • 网站建设用户需求惠州seo优化服务
  • WordPress主题niRvana安徽网站seo
  • 网站做后台武汉百度seo网站优化
  • 设置本机外网ip做网站企业的网络推广
  • 企业网站建设后期维护费用谷歌搜图