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

网站运营 开发网站管理与建设总结

网站运营 开发,网站管理与建设总结,网站建设 检查 通报,网络营销具有什么特点转自 http://www.cnblogs.com/yunfeifei/p/3940075.html 前面三篇讲了MEF的基础和基本到导入导出方法#xff0c;下面就是见证MEF真正魅力所在的时刻。如果没有看过前面的文章#xff0c;请到我的博客首页查看。 前面我们都是在一个项目中写了一个类来测试的#xff0c;但实…转自 http://www.cnblogs.com/yunfeifei/p/3940075.html 前面三篇讲了MEF的基础和基本到导入导出方法下面就是见证MEF真正魅力所在的时刻。如果没有看过前面的文章请到我的博客首页查看。 前面我们都是在一个项目中写了一个类来测试的但实际开发中我们往往要采用分层架构就拿最简单的三层架构来说吧我们通常把业务逻辑写在DLL中现在就来写一个例子看看如何在不编译整个项目的情况下轻松的实现扩展。先透露一下我们只要添加一个DLL就可以了。 这里就以银行为例子吧首先新建一个控制台项目还叫MEFDemo吧然后建一个类库写接口然后再建一个类库实现接口。项目结构如下 MEFDemo和BankOfChina都只引用接口项目,MEFDemo不需要引用BankOfChina。 BankInterface的代码如下做个简单实例写几个方法测试一下 using System; using System.Collections.Generic; using System.Linq; using System.Text;namespace BankInterface {public interface ICard{//账户金额double Money { get; set; }//获取账户信息string GetCountInfo();//存钱void SaveMoney(double money);//取钱void CheckOutMoney(double money);} } 这里添加一个中国银行卡实现接口引用命名空间什么的不再重复说了不懂看前面的文章代码如下 using System; using System.Collections.Generic; using System.Linq; using System.Text; using BankInterface; using System.ComponentModel.Composition;namespace BankOfChina {[Export(typeof(ICard))]public class ZHCard : ICard{public string GetCountInfo(){return Bank Of China;}public void SaveMoney(double money){this.Money money;}public void CheckOutMoney(double money){this.Money - money;}public double Money { get; set; }} } 然后编写主程序代码如下 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Reflection; using System.ComponentModel.Composition; using System.ComponentModel.Composition.Hosting; using BankInterface;namespace MEFDemo {class Program{[ImportMany(typeof(ICard))]public IEnumerableICard cards { get; set; }static void Main(string[] args){Program pro new Program();pro.Compose();       foreach (var c in pro.cards)       {          Console.WriteLine(c.GetCountInfo());       } Console.Read();}private void Compose(){var catalog new DirectoryCatalog(Cards);var container new CompositionContainer(catalog);container.ComposeParts(this);}} } 现在我们知道只有一种银行卡及中国银行的注意我标红的代码这里是一个目录及主程序所在目录的Cards文件夹我们把生成的BankOfChian.dll拷贝到这个文件夹下然后运行才可以正确输出信息(毕竟我们没有引用那个项目)如图 到了这里相信大家已经明白了如果现在需求改变了需要支持建行、农行等银行卡怎么办呢通常我们要改项目把整个项目都编译再重新发布。但是现在不需要这么做了我们只需要添加一个类库项目把生成的dll拷贝到Cards目录下即可。 我们在这个解决方案下继续添加一个类库项目实现ICard接口代码如下 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.ComponentModel.Composition; using BankInterface;namespace NongHang {[Export(typeof(ICard))]public class NHCard : ICard{public string GetCountInfo(){return Nong Ye Yin Hang;}public void SaveMoney(double money){this.Money money;}public void CheckOutMoney(double money){this.Money - money;}public double Money { get; set; }} } 点击右键编译把生成的dll拷贝到Cards目录下面运行看到如下结果 再看看Cards目录中现在你添加几个dll,就会显示多少条信息了。
http://www.pierceye.com/news/202960/

相关文章:

  • 只做女性的网站编程入门先学什么软件
  • 创客网站建设新余公司做网站
  • 买个网站域名多少钱网站建设 内容缺乏
  • 清河做网站哪里好建设一个网站的文案需要
  • 农机网站模版建网站用什么工作站
  • 网站可以做无形资产游戏代理0加盟费
  • 高端网站建设哪家公司好城乡建设部网站甘红刚
  • 湖北省建设部网站网站排名seo教程
  • 郑州 高端网站建设网络结构有哪几种
  • 电脑做apk的网站h5工商网站如何做实名
  • 循化网站建设公司c语言开发工具
  • wordpress网站做app关于网站的ppt怎么做
  • 怎么建设商品网站项目计划书范文
  • 大足建网站的网页微信版官方下载
  • 企业网站免费建设做网站设计需求
  • 做电影网站用什么虚拟主机建设网站模块需要哪些内容
  • 基于asp.net网站开发优化企业网站
  • 做网站有了空间在备案吗网站建设实务课本
  • 个人站长和企业网站wordpress主键外键
  • 关于对网站建设情况的通报东南亚跨境电商有哪些平台
  • 如需郑州网站建设长沙微网站制作
  • html格式网站网站搜索排名优化软件
  • 定制 网站天津做网站要多少钱
  • 免费做问卷的网站网站建设 好发信息网
  • 网站职能建设论文网页跳转链接怎么制作
  • 专题网站开发工具有哪些wordpress迁移500
  • 酒泉网站建设费用磁力搜索引擎不死鸟
  • 有网站是做水果原产地代发的吗临沂哪家做网站最好
  • 网站建设的背景wordpress htaccess
  • 如何在百度上注册自己的网站郓城做网站哪家好