摘要: C#接口是一个让很多初学C#者容易迷糊的东西,用起来好像很简单,定义接口,里面包含方法,但没有方法具体实现的代码,然后在继承该接口的类里面要实现 接口的所有方法的代码,但没有真正认识到接口的作用的时候就觉得用接口是多此一举,当然你这样想那是绝对绝对错误的,比尔盖茨的微软请的员工都是比盖茨还 聪明的人,他们的C#能添这样的多足吗?!关于接口的作用,网上有一位就真的深入浅出给我们做了很好理解的分析。 我们定义一个接口publicinterfaceIBark{voidBark();}再定义一个类,继承于IBark,并且必需实现其中的Bark()方法publicclassDog:IBark{publi 阅读全文
posted @ 2012-10-24 16:52 怡馨 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 阅读提示:这篇文章将讲述如何利用C#奇妙的特性,实现插件架构,用插件(plug-ins)机制建立可扩展的解决方案。在.NET框架下的C#语言,和其他.NET语言一样提供了很多强大的特性和机制。其中一些是全新的,而有些则是从以前的语言和平台上照搬过来的。 然而,这种巧妙的结合产生了一些有趣的方法可以用来解决我们的问题。这篇文章将讲述如何利用这些奇妙的特性,用插件(plug-ins)机制建立可扩展的 解决方案。后面也将提供一个简要的例子,你甚至可以用这个东西来替换那些已经在很多系统中广泛使用的独立的程序。在一个系统中,可能有很多程序经常需要进 行数据处理。可能其中有一个程序用于处理雇员的信息,而. 阅读全文
posted @ 2012-10-24 16:45 怡馨 阅读(688) 评论(1) 推荐(0) 编辑
摘要: C#插件构架实战C# 插件构架实战 Jack H Hansen [ 2004-07-27 ] Keywords C# 插件 反射(System.Reflection) 属性(System.Attribute) 一、引言 1. 问题的引入 假设你设计的程序已经部署到用户的计算机上,并且能够正常运行了。但是有一天,用户打来了电话——他们要求增加新的功能。确定了用户的需求后,你竟然发现原有的软件架构已经无法胜任新增任务的需求——你需要重新设计这个应用了!但问题是,就算你又用了一个开发周期完成了用户需要的应用,却不能保证用户的需求不会再次变更。也就是说,需求蔓延的可能性依然存在。因此,这种情况下插件构 阅读全文
posted @ 2012-10-24 16:44 怡馨 阅读(378) 评论(0) 推荐(0) 编辑
摘要: 有时我们需要在窗体应用程序中同时启动控制台显示我们的程序运行情况等等,这个时候我们有两种解决方式: 1.项目->属性->应用程序->输出类型->控制台应用程序。 2.在form的cs文件添加如下代码: /// <summary> /// 控制台程序 /// </summary> public class ConsoleEx { /// <summary> /// 启动控制台 /// </summary> [DllImport("kernel32.dll")] public static extern b 阅读全文
posted @ 2012-10-24 16:12 怡馨 阅读(5369) 评论(0) 推荐(0) 编辑
摘要: 关于Assembly.CreateInstance()与Activator.CreateInstance()方法动态创建类对象,大多是Activator.CreateInstance()和 Activator.CreateInstance<T>()方法,非常好用,一般都用了 Assembly.Load("AssemblyName").CreateInstance ("ClassName");的方法,研究一下这两者到底有什么区别,在msdn里,查到了两个方法的介绍:Assembly.CreateInstance 方法 (String)使用区分大 阅读全文
posted @ 2012-10-24 14:31 怡馨 阅读(14177) 评论(1) 推荐(1) 编辑
摘要: 摘要:本文作者将给大家分享一下C#插件式程序开发经验,在共同讨论的过程中能共同进步。 在网上找了下插件式编程的资料,这里自己先借鉴下别人的,同时发现有自己的看法,不过由于本人水平有限,不一定有参考价值,写出来一方面是为了总结自己,以求提高,另一方面也希望各为朋友看到我的不足,给我提出宝贵意见。 什么是插件式编程 提起插件式,我们首先想到的是firefox, 用过firefox的人都知道它是一个插件式程序。当一个功能需要,完全可以从网上下载一个插件后,重启后,就能使用。这个功能给我们带来许多的方便之处,这就是插件式程序的好处。 插件的本质在于不修改程序主体(平台)的情况下对软件功能进行拓... 阅读全文
posted @ 2012-10-24 10:12 怡馨 阅读(593) 评论(0) 推荐(0) 编辑
摘要: 一、前言插件模型指应用程序由一些动态的独立模块构成,每个模块均具有一个或多个服务,并满足一定的插件协议,能够借助主程序实现主程序-插件,插件-插件之间的 通讯。它定义了一套公共的接口,通过接口与插件进行通信,主要是通过反射来获取相关的属性和方法,然后再执行指定的操作。其实,它也可以理解为定义一套通 用的解决方案,通过反射来获取相应的程序集的相关类型,然后执行这些指定类型的相关操作。它是一种即插即用的方案,更新及维护简便。本文仅仅是描述插件开发的大体模型,设计比较简单,主要的步骤如下:(1)、定义公共的接口以及抽象类。(2)、定义和实现相关组件。(3)、实现通用程序集反射操作类。其中,公共的接口 阅读全文
posted @ 2012-10-24 10:08 怡馨 阅读(451) 评论(0) 推荐(0) 编辑
摘要: 之前一直想学学插件编程,主要的原因是感到现在的客户需求变化不定,如果把全部功能整合在一个执行文件中的话,修改,升级起来很不方便,所以想采用 插件编程的方式,只需要构建好了程序框架之后,每完成一个功能,就可以让用户审核一个,化整为零,让开发团队和客户都能构掌握项目开发的进度.同 时大家通过这种方式,增强对项目按时完成的信心. 以下资料主要是从hahablog中获得的,从网上找了很多类似的资料,只有这个我觉得是比较适合初学者 复制 保存//1 定义插件接口,将其编译成 dll,例如:using System;namespace PluginInterface{public interface IS 阅读全文
posted @ 2012-10-24 10:06 怡馨 阅读(361) 评论(0) 推荐(0) 编辑