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

单页网站与传统网站的区别建设网站 深圳

单页网站与传统网站的区别,建设网站 深圳,花生棒 做网站,网站建设主机的功能转自#xff1a;http://www.cnblogs.com/yunfeifei/p/3927663.html 前面说完了导入和导出的几种方法#xff0c;如果大家细心的话会注意到前面我们导出的都是类#xff0c;那么方法和属性能不能导出呢#xff1f;#xff1f;#xff1f;答案是肯定的#xff0c;下面就来… 转自http://www.cnblogs.com/yunfeifei/p/3927663.html 前面说完了导入和导出的几种方法如果大家细心的话会注意到前面我们导出的都是类那么方法和属性能不能导出呢答案是肯定的下面就来说下MEF是如何导出方法和属性的。 还是前面的代码第二篇中已经提供了下载链接大家可以下载学习。 首先来说导出属性因为这个比较简单和导出类差不多先来看看代码主要看我加注释的地方MusicBook.cs中的代码如下 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.ComponentModel.Composition;namespace MEFDemo {[Export(MusicBook)]public class MusicBook : IBookService{//导出私有属性[Export(typeof(string))]private string _privateBookName Private Music BookName;//导出公有属性[Export(typeof(string))]public string _publicBookName Public Music BookName;public string BookName { get; set; }}[Export(MathBook, typeof(IBookService))]public class MathBook : IBookService{public string BookName { get; set; }public string GetBookName(){return MathBook;}}[Export(HistoryBook, typeof(IBookService))]public class HistoryBook : IBookService{public string BookName { get; set; }public string GetBookName(){return HistoryBook;}}} program.cs中的代码如下 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Reflection; using System.ComponentModel.Composition; using System.ComponentModel.Composition.Hosting;namespace MEFDemo {class Program{[ImportMany(MathBook)]public IEnumerableobject Services { get; set; }//导入属性这里不区分public还是private[ImportMany]public Liststring InputString { get; set; }static void Main(string[] args){Program pro new Program();pro.Compose();if (pro.Services ! null){foreach (var s in pro.Services){var ss (IBookService)s;Console.WriteLine(ss.GetBookName());}}foreach (var str in pro.InputString){Console.WriteLine(str);}Console.Read();}private void Compose(){var catalog new AssemblyCatalog(Assembly.GetExecutingAssembly());CompositionContainer container new CompositionContainer(catalog);container.ComposeParts(this);}} } 下面还用foreach遍历输出属性的值运行即可查看到结果。最后我会附上源码供大家下载这里就不再截图了。 下面说导出方法吧同理无论是公有方法还是私有方法都是可以导出的MusicBook代码如下 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.ComponentModel.Composition;namespace MEFDemo {[Export(MusicBook)]public class MusicBook : IBookService{//导出私有属性[Export(typeof(string))]private string _privateBookName Private Music BookName;//导出公有属性[Export(typeof(string))]public string _publicBookName Public Music BookName;public string BookName { get; set; }//导出公有方法[Export(typeof(Funcstring))]public string GetBookName(){return MusicBook;}//导出私有方法[Export(typeof(Funcint, string))]private string GetBookPrice(int price){return $ price;}}[Export(MathBook, typeof(IBookService))]public class MathBook : IBookService{public string BookName { get; set; }public string GetBookName(){return MathBook;}}[Export(HistoryBook, typeof(IBookService))]public class HistoryBook : IBookService{public string BookName { get; set; }public string GetBookName(){return HistoryBook;}}} program中的代码如下 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Reflection; using System.ComponentModel.Composition; using System.ComponentModel.Composition.Hosting;namespace MEFDemo {class Program{[ImportMany(MathBook)]public IEnumerableobject Services { get; set; }//导入属性这里不区分public还是private[ImportMany]public Liststring InputString { get; set; }//导入无参数方法[Import]public Funcstring methodWithoutPara { get; set; }//导入有参数方法[Import]public Funcint,string methodWithPara { get; set; }static void Main(string[] args){Program pro new Program();pro.Compose();if (pro.Services ! null){foreach (var s in pro.Services){var ss (IBookService)s;Console.WriteLine(ss.GetBookName());}}foreach (var str in pro.InputString){Console.WriteLine(str);}//调用无参数方法if (pro.methodWithoutPara ! null){Console.WriteLine(pro.methodWithoutPara());}//调用有参数方法if (pro.methodWithPara ! null){Console.WriteLine(pro.methodWithPara(3000));}Console.Read();}private void Compose(){var catalog new AssemblyCatalog(Assembly.GetExecutingAssembly());CompositionContainer container new CompositionContainer(catalog);container.ComposeParts(this);}} } 导入导出方法用到了FuncT委托当然没有返回值的话可以用ActionT委托关于委托这里就不多说了大家可以自行百度。
http://www.huolong8.cn/news/174835/

相关文章:

  • 电子商务网站建设平台大连网站建设好的公司
  • 辽源做网站的公司网页设计心得体会学会了什么
  • 检测WordPress主题的网站海南网络
  • 怎么创建音乐网站wordpress简洁博客模板
  • 陕西住房和城乡建设厅网站电话找别人做网站需要什么信息
  • 网站建设技术服务税种分类app开发平台
  • 摄影师个人网站制作快速排名工具免费查询
  • 做网站的公司都缴什么税金工厂找订单哪个平台最好
  • 山东 网站备案wordpress编辑器插件哪个好
  • WordPress英文换行沈阳seo专业培训
  • 网站做项目网站分成几种类型
  • 网站开发与技术分析网站网络优化服务
  • 安溪建设局网站多用户商城系统的效果
  • 建立学校网站需要多少钱?wordpress段落缩进
  • 当前网站开发用什么软件衡水城乡建设局网站
  • 怎么做网站的用户注册营销型网站易网拓
  • 网站建设太难了wordpress破解版下载
  • 哪个网站可以做puzzle百度云wordpress怎么搭建
  • 客户网站开发全流程做网站ps分辨率给多少钱
  • 免费拍卖网站模板做网站开发的女生多吗
  • 企业 网站 推广优惠券怎做网站
  • 站长工具app官方下载电子商务平台建设与运营技术
  • 龙岗公司网站建设个人备案可以做影视网站吗
  • 学做网站培训上海网络建站培训
  • 网上购物网站的设计与实现Wordpress企业主题排行
  • 外贸网站优化软件网站建设捌金手指下拉七
  • 网页设计师学习网站Wordpress图片热点
  • 租用了空间 怎样上传网站程序容城网站建设
  • 做网店有哪些拿货网站顺义手机网站设计
  • 网站开发 net一起来做网站17