摘要:
第一步,把js文件等文件拖入到Resource.resx资源管理窗口里,也就是让IDE动态的给我们的资源在Resource.Designer.resx文件中加入管理代码。第二步,要在我们的程序集里注册这些文件,可以在AssemblyInfo.cs注册,也可以在控件cs文件里命名空间外注册,注册的格式的例子是。 [assembly: WebResource("TPI.Web.UI... 阅读全文
摘要:
1:调用WebService namespace PatternTest{ /**//// /// WebService 的摘要说明 /// [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] ... 阅读全文
摘要:
1:意图 代理(Proxy)模式给某一个对象提供一个代理,并由代理对象控制对原对象的引用。 代理模式的英文叫做Proxy或Surrogate,中文都可译成"代理"。所谓代理,就是一个人或者一个机构代表另一个人或者另一个机构采取行动。在一些情况下,一个客户不想或者不能够直接引用一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。2:类图 抽象主题角色(Subject):... 阅读全文
摘要:
1:简介 装饰(Decorator)模式又名包装(Wrapper)模式[GOF95]。装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案。2:类图 抽象构件(Component)角色:给出一个抽象接口,以规范准备接收附加责任的对象。 具体构件(Concrete Component)角色:定义一个将要接收附加责任的类。 装饰(Decorator)角色:持有一个构件(C... 阅读全文
摘要:
Microsoft Asp.Net Ajax框架入门(1) 初览 Microsoft Asp.Net Ajax框架入门(2) 页面的客户端生命周期 Microsoft Asp.Net Ajax框架入门(3) 操作DOM元素 Microsoft Asp.Net Ajax框架入门(4) 订阅事件处理函数并传递参数 Microsoft Asp.Net Ajax框架入门(5) Object类型、Strin... 阅读全文
摘要:
1:概述 用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。简单点来说,将原来两个直接引用或者依赖的对象拆开,在中间加入一个“中介”对象,使得两头的对象分别和“中介”对象引用或者依赖2:类图1) 抽象中介者(Mediator)角色:抽象中介者角色定义统一的接口用于各同事角色之间的通信。 2) 具体中介者(Conc... 阅读全文
摘要:
1:概述 合成模式有时又叫做部分-整体模式(Part-Whole)。合成模式将对象组织到树结构中,可以用来描述整体与部分的关系。合成模式可以使客户端将单纯元素与复合元素同等看待。2:类图 抽象构件(Component)角色:这是一个抽象角色,它给参与组合的对象规定一个接口。这个角色给出共有接口及其默认行为。 树叶构件(Leaf)角色:代表参加组合的树叶对象。一个树叶对象没有下级子对象。树枝... 阅读全文
摘要:
1:意图 在软件开发系统中,客户程序经常会与复杂系统的内部子系统之间产生耦合,而导致客户程序随着子系统的变化而变化。那么如何简化客户程序与子系统之间的交互接口?如何将复杂系统的内部子系统与客户程序之间的依赖解耦?这就是要说的Façade 模式。(外部与一个子系统的通信必须通过一个统一的门面(Facade)对象进行,这就是门面模式)2:类图3:代码 /**//// /// 声音子系... 阅读全文
摘要:
1:概述 将抽象化(Abstraction)与实现化(Implementation)脱耦,使得二者可以独立地变化 抽象化 存在于多个实体中的共同的概念性联系,就是抽象化。作为一个过程,抽象化就是忽略一些信息,从而把不同的实体当做同样的实体对待。 实现化 抽象化给出的具体实现,就是实现化。 脱耦 所谓耦合,就是两个实体的行为的某种强关联。而将它们的... 阅读全文
摘要:
1:概述建造者模式可以将一个产品的内部表象与产品的生成过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象。2:使用场景 对象性质的建造 有些情况下,一个对象会有一些重要的性质,在它们没有恰当的值之前,对象不能作为一个完整的产品使用。比如,一个电子邮件有发件人地址、收件人地址、主题、内容、附录等部分,而在最起码的收件人地址未被赋值之前,这个电子邮件不能发出。 ... 阅读全文
摘要:
A:Creational Pattern:抽象了对象的实例化过程 1:Abstract Factory Pattern 提供一个创建一系列相关或相互依赖对象的接口,而无需... 阅读全文
摘要:
1:概述 原型模式的用意是:通过给出一个原型对象来指明所要创建的对象类型,然后用复制这个原型对象的办法创建出更多的同类型对象。2:C#对原型模式的支持 在C#里面,我们可以很容易的通过Clone()方法实现原型模式。任何类,只要想支持克隆,必须实现C#中的ICloneable接口。ICloneable接口中有一Clone方法,可以在类中复写实现自定义的克隆方法。克隆的实现方法有... 阅读全文
摘要:
1:使用场景 A: 一个系统不应当依赖于产品类实例如何被创建、组合和表达的细节,这对于所有形态的工厂模式都是重要的。 B:这个系统有多于一个的产品族,而系统只消费其中某一产品族。 C:同属于同一个产品族的产品是在一起使用的,这一约束必须在系统的设计中体现出来。 D:系统提供一个产品类的库,所有的产品以同样的接口出现,从而使客户端不依赖于实现。2:构成 ... 阅读全文
摘要:
1:概述 工厂方法(FactoryMethod)模式是类的创建模式,其用意是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类中。 工厂方法模式是简单工厂模式的进一步抽象和推广。由于使用了多态性,工厂方法模式保持了简单工厂模式的优点,而且克服了它的缺点。 在工厂方法模式中,核心的工厂类不再负责所有产品的创建,而是将具体创建工作交给子类去做。这个核心类仅仅负责给出具体工厂必须实现的接口... 阅读全文
摘要:
很多人对Volatile都不太了解,其实Volatile是由于编译器优化所造成的一个Bug而引入的关键字。 int a = 10; int b = a; int c = a; 理论上来讲每次使用a的时候都应该从a的地址来读取变量值,但是这存在一个效率问题,就是每次使用a都要去内存中取变量值,然后再通过系统总线传到CPU处理,这样开销... 阅读全文
摘要:
1:缓存依赖的类别 文件,数据表,数据行,一段时间,控件,查询字符串等2:缓存项之间的依赖 protected void Button3_Click(object sender, EventArgs e){ // create item A and item B string itemA = "ItemA"; string itemB = "ItemB"; Cac... 阅读全文
摘要:
1. SqlServer2000数据库字典--表结构.sql SELECT TOP 100 PERCENT --a.id, CASE WHEN a.colorder = 1 THEN d.name ELSE '' END AS 表名, CASE WHEN a.colorder = 1 THEN isnull(f.value, '') ELSE '' END AS 表说明, ... 阅读全文
摘要:
特点: 1:单例类只能有一个实例。 2:单例类必须自己创建自己的唯一实例。 3:单例类必须给所有其它对象提供这一实例。应用: 每台计算机可以有若干个打印机,但只能有一个Printer Spooler,避免两个打印作业同时输出到打印机。 一个具有自动编号主键的表可以有多个用户同时使用,但数据库中只能有一个地方分配下一个主键编号。否则会出现主键重复。代码实现... 阅读全文
摘要:
The Strategy Pattern defines a family of algorithms,encapsulates each one,and makes them interchangeable. Strategy lets the algorithm vary independently from clients that use it.个人理解:策略模式定义了一系列的算法,并将每... 阅读全文
摘要:
.Net编程中最经常用的元素,事件必然是其中之一。无论在ASP.NET还是WINFrom开发中,窗体加载(Load),绘制(Paint),初始化(Init)等等。“protected void Page_Load(object sender, EventArgs e)”这段代码相信没有人不熟悉的。细心一点一定会发现,非常多的事件方法都是带了“object sender, EventArgs e”这... 阅读全文
摘要:
(观察者封装了观察者和观察方法这两个变化点,重要的还是观察方法。)个人理解针对软件构建过程中,某些对象存在的“通知依赖关系”(如果目标对象的状态发生改变将通知所有的依赖对象)。我们可以利用抽象类或者接口在消息发出对象中建立通知耦合关系,也可以通过事件与委托在被通知对象中建立通知这种藕和关系。效果及实现要点1.使用面向对象的抽象,Observer模式使得我们可以独立地改变目标... 阅读全文
摘要:
设计原则: (1)针对接口编程,而不是针对实现编程 (2)优先使用对象组合,而少用继承 (3)封装变化点 具体的设计原则: (1)单一职责原则 (2)开放封闭原则 (3)Liskov替换原则 (4)依赖倒置原则 (5)接口隔离原则 比模式更重要的原则(GRASP职责分配原则)1:信息专家[方法分配](如果某个类具有某个职责需要的所有信息那么该方法应分配给该类)2:创造者[对象创建](如果A是B的聚... 阅读全文
摘要:
摘要本文介绍了在.NET框架下应用Web设计模式改进WebForm程序设计的一些基本方法及要点。关键字设计模式,ASP.NET,WebForm,MVC,Page Controller,Front Controller,Page Cache目录引言经典的WebForm架构设计模式MVC模式下的WebFormPage Controller模式下的WebFormFront Controller模式下... 阅读全文
摘要:
1:Params 1 public static void UseParams(params object[] list) 2 { 3 for (int i = 0; i < list.Length; i++) 4 { 5 Console.WriteLine(list[i]); 6 } 7 } 8 9 static void Main... 阅读全文
摘要:
SqlCommand.ExecuteNonQuery 方法对连接执行 Transact-SQL 语句并返回受影响的行数。 备注:可以使用 ExecuteNonQuery 来执行目录操作(例如查询数据库的结构或创建诸如表等的数据库对象),或通过执行 UPDATE、INSERT 或 DELETE 语句,在不使用 DataSet 的情况下更改数据库中的数据。 虽然 ExecuteNonQuery 不返... 阅读全文
摘要:
1:什么是领域模型 是对领域内的概念类或现实世界中对象的可视化表示。领域模型也称概念模型,领域对象模型和分析对象模型。 (UP领域模型是UP业务对象的特化“专用于解释业务领域中重要的‘实物’和产品也就是说领域模型专注于特定领域 ”) 2:如何找到领域模型 通常由两种方法。“使用分类列表”和“通过” 2.1:使用分类列表 我们可以通过制作概念类候选列表来开始创建领域... 阅读全文
摘要:
什么是用例? 通俗的讲用例就是一组相关的成功和失败场景集合,用来描述参与者如何使用系统来实现其目标.(RUP中定义为:"一组用例的实例,其中每个实例都是系统执行的一系列活动,这些活动产生了对某个参与者而言可观察的返回植.") 用例文本都包含那些部分? 包含如下13个部分 用例名称:以动词开始 范围:要设计的系统 级别:"用户目标"或者是"子功能" 只要... 阅读全文
摘要:
SELECT TableName=CASE WHEN C.column_id=1 THEN O.name ELSE N'' END, TableDesc=ISNULL(CASE WHEN C.column_id=1 THEN PTB.[value] END,N''), Column_id=C.column_id, ColumnName=C.name, PrimaryKey=ISNULL(IDX.... 阅读全文
摘要:
function CreateProductModule(obj){ var SelectProductModule = $("HidSelectProductModule"); if(obj.checked) { if(SelectProductModule.value.indexOf(obj.value) == -1) { var ... 阅读全文
摘要:
你是Rational Rose(以后简称Rose)的新手吗?本文提供了在学习 Rose 道路上的第一步。通过这篇文章,我们将向你介绍什么是 Rose,并提供给你在 RDN 上的资料(同时也有来自 RUP 的材料和其他一些相关资源)的学习路径,这些资料将帮助你根据你的角色更快速、方便的部署或使用 Rose。这个学习路径将提供给你 RDN 资源的分类指引:文章,文档,教程和支持的技巧,他们将帮助你更加... 阅读全文