摘要:
使用HttpHandler来调用网址重写 除了上面所述方法外,网址重写也可以放入HttpHandler或者HttpHandlerFactory中调用。HttpHandler是一个负责针对特定请求生成相应内容的类,而HttpHandlerFactory返回一个HTTP的实例,该实例针对特定请求生成相应内容。 本节将着眼于为这些ASP.NET页面创建一个网址重写的HttpHandlerFactor... 阅读全文
摘要:
如上所述,网址重写是实现一种截取网址请求并将其进行处理后重新指向到一个指定的网址的过程。 在网址重写执行的期间,相应处理程序处理被请求的网址,从中提取出相关的值,然后重新指向一个新的指定地址。例如:由于一次网站目录调整,原有的 /people/ 子目录下的所有网页全部移动到/info/employees/目录,原访问者从收藏夹或者其他什么地方点击链接发出访问/people/目录下的文件的请求时,你... 阅读全文
摘要:
这时初学者不禁扼腕兴叹,要是没有指针多好!指针有什么用?然而指针被喻为C语言的精华,自有其必然之处,例如:void fun(int a){a=20;}void main(){int a = 10;fun(a)}想让a变成20,若把a作为实参直接传进去经过fun(a)之后出来a依旧是10。改变的只不过是形参的值,欲以此达到效果,无异刻舟求剑。但是如果把a的地址传进去,即以指针作为实参,则可以达到这个... 阅读全文
摘要:
在以前用Delphi开发的项目中,会经常用到TChart这个画图控件,它本身很强大,支持各类图,如点线图,柏拉图,柱状图等等,加上可以输出成BMP,JPEG,JPG,SVG,GIF等各种格式图片,很好用,当时也封装成比较独立的DLL文件。这次开发.NET程序正好派上用场。 几个关键技术点: 1 C#要以非托管方式调用DLL 2 C#把整理好的画图数据生成事先定义好格式的XML文件,传给DL... 阅读全文
摘要:
背景目前比较流行的 WinForm 程序设计都会提供形象的可视化数据流动记录功能,如 FlashGet 及其衍生软件的悬浮窗网速监视图,Windows 任务管理器的 CPU、内存使用图等。 构思为了在我们自己的程序中实现这种效果,就需要研究、分析它们的原理,掌握其规律,然后加以实现。很明显,从软件可重用性以及各种随之而来的好处考虑,我们要求将这个“波形显示”效果做成一个控件... 阅读全文
摘要:
外观模式,故明思意,就是只看外表,在我们的代码中实际代码中,就是对一系列操作进行封装,并对外提供一个接口,在我们现实生活中,HIFI对大家来说应该不陌生了现在就用一个HIFI的例子来给大家说明public interface IHIFI{public void hifiOpen();}public class HIFI implements IHIFI{public void hifiOpen()... 阅读全文
摘要:
C#应用程序启动时:Application.Run(new Form1());新建了一个窗体,但是很难在窗体建立后随意改变窗体风格和颜色,本人初学,但经过一番试验发现了如下方法可以在窗体建立后随意改变窗体的风格和颜色。首先添加一个timer1,下面是timer的代码改变了skinEngine1.SkinFile的属性(kinEngine1是一个改变肤色的扩展控件),注意要把kinEngine1.S... 阅读全文
摘要:
C#的设计模式 意图 将抽象部分与实现部分分离,使它们都可以独立的变化。 场景 还是说我们要做的网络游戏,多个场景需要扩充的问题我们已经采用了创建型模式来解决。现在的问题就是,不仅仅是游戏场景会不断扩充,而且游戏的模式也在不断扩充。比如,除了最基本的战斗模式之外,还会有道具模式,金币模式等。 对于这种在多个维度上都会有变化或扩充需求的项目来说,可以考虑引入桥接模式。或许你会说,不管... 阅读全文
摘要:
代码执行结果如下图: 代码说明 Weapon是抽象构件角色。 Rifle是具体构件角色,实现抽象构件的接口。 Decorator是装饰角色。装饰角色有两个特点,一是继承了抽象构件的接口,二是有一个构件角色的实例。 Enhance和Wear是具体装饰角色,它们负责给构件附加责任。 客户端在使用装饰角色的时候并没有针对抽象构件进行编程,因为我们确实需要使用具体装饰角色提供的额外方法,... 阅读全文
摘要:
意图 动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活。 场景 在设计网络游戏的武器系统时,开始并没有考虑到武器的强化和磨损。之后,策划人员说希望给游戏增加强化系统和修理系统,那么我们的武器类型就需要对外提供强化、磨损、修理等方法了。发生这种改动是我们最不愿意看到的,按照设计原则,我们希望功能的扩展尽可能不要修改原来的程序。你可能会想到使用继承来... 阅读全文
摘要:
C# 的数据类型分为:值类型和引用类型值类型:变量:从用户角度,变量是存储信息的基本单元。从系统角度,变量是计算机内存中的一个存储空间。C#值类型分为:简单类型(Simply types)结构类型(Struct types)枚举类型(Enumeration types)简单类型:(单纯变量,c#为我们提供了一组已经定义的简单类型)整数类型:(区分数学的整数范围和计算机的整数范围)C#有九种整数类型... 阅读全文
摘要:
我们来看一个例子: 我的程序中有需要一系列的对象,比如apple,orange…, 要想利用他们,我们就必须在程序中根据用户要求,然后一个个调用 new 操作符来生成他们,这样客户程序就要知道相应的类的信息,生成的代码显然不够灵活。我们可以在代码中不利用具体的类,而只是说明我们需要什么,然后就能够得到我们想要的对象吗? 哦,我们都看设计模式,听吧,很多人都在那里鼓吹他们是... 阅读全文