自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(34)
  • 收藏
  • 关注

转载 ASP.NET页面生命周期

对于ASP.NET开发者,理解ASP.NET的页面生命周期是非常重要的。主要是为了搞明白在哪里放置特定的方法和在何时设置各种页面属性。但是记忆和理解页面生命周期里提供的事件处理方法(method)非常困难。互联网上有很多关于页面生命周期内部机制的文章,所以本文只准备简单覆盖技术的基础部分,更主要的目的是给大家提供一个简单得记忆页面生命周期的方法。 准确的记忆ASP.NET页面生命周期每一个阶段

2009-05-11 17:30:00 350

原创 读原型模式后(草稿)

http://terrylee.cnblogs.com/archive/2006/01/16/317896.html在设计模式上面,偶也是初学者,看了TerryLee的文章,不能完全领悟,看了那么多回复,更是感觉高手太多,鸡立鹤群。我的理解是,OO原则的一条合成/聚合复用原则(CARP)尽量使用合成/聚合、尽量不使用继承,原型模式可以理解为避免子类无限膨胀使用的一种方式。于是思路比较简单,如果

2009-04-07 17:06:00 104

转载 对.Net 垃圾回收Finalize 和Dispose的理解

我们先来谈谈析构函数。析构函数是不可继承的。因此,除了自已所声明的析构函数外,一个类不具有其他析构函数。由于析构函数要求不能带有参数,因此它不能被重载,所以一个类至多只能有一个析构函数。析构函数是自动调用的,它不能被显式调用。当任何代码都不再可能使用一个实例时,该实例就符合被销毁的条件。此后,它所对应的实例析构函数随时均可能被调用。销毁一个实例时,按照从派生程度最大到派生程度最小的顺序

2009-04-03 15:37:00 581

转载 C# 3.0新语言特性和改进

 C# 3.0新语言特性和改进包括:自动属性(Auto-Implemented Properties) 隐含类型局部变量(Local Variable Type Inference) 匿名类型(Anonymous Types) 对象与集合初始化器(Object and Collection Initializers) 扩展方法(Extension Methods)

2009-03-31 10:52:00 296

转载 .Net Remoting总结(待续)

一、Remoting基础       一种分布式处理方式。从微软的产品角度来看,可以说Remoting就是DCOM的一种升级,它改善了很多功能,并极好的融合到.Net平台下。       Remoting 提供了一种允许对象通过应用程序域与另一对象进行交互的框架。正是我们使用Remoting的原因。在Windows操作系统中,是将应用程序分离为单独的进程。这个进程形成了应用程序代码和数据周

2008-12-24 13:31:00 394

原创 SQL Server的复制(待续)

SQL复制的工作原理      SQL SERVER 主要采用出版物、订阅的方式来处理复制。源数据所在的服务器是出版服务器,负责发表数据。出版服务器把要发表的数据的所有改变情况的拷贝复制到分发服务器,分发服务器包含有一个分发数据库,可接收数据的所有改变,并保存这些改变,再把这些改变分发给订阅服务器。 SQL复制的基本元素包括    出版服务器、分发服务器、订阅服务器、出版物、文章

2008-12-22 14:19:00 344 1

原创 .net垃圾收集(待续)

析构函数与IDisposable接口一、析构函数.net的析构函数代码会被编译在Finalize()中protected override void Finalize(){    try    {            //destructor implementation    }    finally   {            base.Fina

2007-12-31 15:58:00 278

原创 C#书籍

框架设计(第2版):CLR Via C#  (美)Jeffrey Richter著 周靖 张杰良 译 / 2006年10月 / 清华大学出版社 / 68元 / 新版

2007-06-23 16:24:00 503

原创 HttpContext, HttpModules 和 HttpHandlers

 HttpContext, HttpModules 和 HttpHandlers        httpApplication它本身对发送给应用程序的数据一无所知-它只是一个通过事件来通讯的消息对象.它触发事件并通过HttpContext对象来向被调用函数传递消息.实际的当前请求的状态数据由前面提到的HttpContext对象维护.它提供了所有请求专有的数据并从进入管道开始到结束一直跟随请求.图7

2007-06-13 14:14:00 962

转载 面向对象的设计原则

 一、“开-闭”原则(OCP)对可变性封装       一个软件应该对扩展开放,对修改关闭。它的核心含意是:一个好的设计应该能够容纳新的功能需求的增加,但是增加的方式不是通过修改又有的模块(类),而是通过增加新的模块(类)来完成的。如果一个设计能够遵循OCP,那么就能够有效的避免上述的问题。   要实现OCP的关键是抽象。模块可以操作一个抽象体。由于模块依赖于一个固定的抽象体,因此它可以是

2006-12-04 16:06:00 580

转载 向依赖关系宣战

依赖倒置、控制反转和依赖注入辨析   在《道法自然——面向对象实践指南》一书中,我们采用了一个对立统一的辩证关系来说明“模板方法”模式—— “正向依赖 vs. 依赖倒置”(参见:《道法自然》第15章[王咏武, 王咏刚 2004])。这种把“好莱坞”原则和 “依赖倒置”原则等量齐观的看法其实来自于轻量级容器PicoContainer主页上的一段话:  “控制反转(Inversion of

2006-12-04 15:28:00 581

转载 《解剖PetShop》系列之二

二、PetShop数据访问层之数据库访问设计在系列一中,我从整体上分析了PetShop的架构设计,并提及了分层的概念。从本部分开始,我将依次对各层进行代码级的分析,以求获得更加细致而深入的理解。在PetShop 4.0中,由于引入了ASP.Net 2.0的一些新特色,所以数据层的内容也更加的广泛和复杂,包括:数据库访问、Messaging、MemberShip、Profile四部分。在系列二中,我

2006-11-22 17:40:00 493

转载 《解剖PetShop》系列之一

 前言:PetShop是一个范例,微软用它来展示.Net企业系统开发的能力。业界有许多.Net与J2EE之争,许多数据是从微软的PetShop和Sun的PetStore而来。这种争论不可避免带有浓厚的商业色彩,对于我们开发人员而言,没有必要过多关注。然而PetShop随着版本的不断更新,至现在基于.Net 2.0的PetShop4.0为止,整个设计逐渐变得成熟而优雅,却又很多可以借鉴之处。Pe

2006-11-22 17:39:00 551

转载 ADO.Net的数据源和数据绑定控件

ASP.NET 2.0 引入了一系列可以改善数据访问的新工具,包括几个数据源和数据绑定控件。新增种类的数据源控件可以消除 ASP.NET 1.x 中要求的大量重复性代码。例如,您可以很容易地将 SQL 语句或存储过程与数据源控件相关联,并且将它们绑定到数据绑定控件。更令人感到印象深刻的是,通过 ObjectDataSource 控件可以简化开发和减少代码,并且仍然可以在 n 层体系结构的不同层

2006-11-21 11:15:00 2005

转载 .NET多线程编程(4):线程池和异步编程

如果你仔细阅读了我前面的三篇文章,我相信你对用.NET Framework提供的System.Threading.Thread类和一些线程同步的类基本的线程知识和多线程编程知识很了解。我们将在这里进一步讨论一些.NET类,以及他们在多线程编程中扮演的角色和怎么编程。它们是:System.Threading.ThreadPool 类System.Threading.Timer 类如果线程的数目并不是

2006-11-21 11:08:00 614

转载 .NET多线程编程(3):线程同步

随着对多线程学习的深入,你可能觉得需要了解一些有关线程共享资源的问题. .NET framework提供了很多的类和数据类型来控制对共享资源的访问。考虑一种我们经常遇到的情况:有一些全局变量和共享的类变量,我们需要从不同的线程来更新它们,可以通过使用System.Threading.Interlocked类完成这样的任务,它提供了原子的,非模块化的整数更新操作。还有你可以使用System.Thre

2006-11-21 11:07:00 553

转载 .NET多线程编程(1):多任务和多线程

<!--google_ad_client = "pub-1294368471619564";google_ad_width = 300;google_ad_height = 250;google_ad_format = "300x250_as";google_ad_type = "text";google_ad_channel ="";google_color_bo

2006-11-21 11:00:00 618

转载 .NET多线程编程(2):System.Threading.Thread类

在接下来的这篇文章中,我将向大家介绍.NET中的线程API,怎么样用C#创建线程,启动和停止线程,设置优先级和状态.在.NET中编写的程序将被自动的分配一个线程.让我们来看看用C#编程语言创建线程并且继续学习线程的知识。我们都知道.NET的运行时环境的主线程由Main ()方法来启动应用程序,而且.NET的编译语言有自动的垃圾收集功能,这个垃圾收集发生在另外一个线程里面,所有的这些都是后台发生的,

2006-11-21 10:58:00 561

转载 设计模式--工厂模式

一、类型 工厂模式分简单工厂(Simple Factory)、工厂方法(Factory Method)和抽象工厂(Abstract Factory)二、结构简单工厂:工厂方法:抽象工厂: 

2006-08-11 00:21:00 1097

转载 .Net Remoting与Web Service

        运行于Internet的分布式应用程序,Web Service是首选的解决方案,因为Web Service能够穿透足够安全的防火墙,虽然Remoting技术也可以实现这样的功能,但是对于Internet解决方案,Web Service仍是首选。和Web Service相比,Web Service需要Web服务器的支持,Remoting不需要Web服务器,它是使用自己的HTTP或者T

2006-08-01 22:04:00 675

转载 ASP.NET Session详解

阅读本文章之前的准备阅读本文章前,需要读者对以下知识有所了解。否则,阅读过程中会在相应的内容上遇到不同程度的问题。 懂得ASP/ASP.NET编程 了解ASP/ASP.NET的Session模型 了解ASP.NET Web应用程序模型 了解ASP.NET Web应用程序配置文件Web.config的作用、意义及使用方法 了解Inte

2006-04-19 10:43:00 580

转载 ASP.Net ViewState的实现

ViewState是.Net中提出的状态保存的一种新途径(实际上也是老瓶装新酒);我们知道,传统的Web程序保存状态的方式有这样几种:  1、Application 这是Web应用程序生命期中的全局保存区,保存在Application中的数据是全局有效的;在Asp.Net中,有一个应用程序池,其中保存了数个(或数十个)应用程序实例,每一次请求都会从池中取一个实例来处理请求,在请求完毕之前,这个实例

2006-04-19 10:42:00 505

转载 ASP.NET 2.0 的内部变化

适用于:Microsoft ASP.NET 2.0(针对 Beta 2 中的更改进行了更新)摘要:虽然 ASP.NET 2.0 百分之百地向后与 ASP.NET 1.1 兼容,但它给 ASP.NET 带来了很多内部的变化。包括针对代码模型、编译、页面生命周期的变化等等。本文将概述这些变化。本页内容 简介  代码模型  编译  完整的运行时编译(/app_code 目录)  

2006-04-19 10:33:00 479

转载 转贴:Enterprise Library2.0(2):Logging Application Block

一.改进的地方1.Logging Application Block首先带来的是名称上的改变,在1.1下它的全称应该是Logging and Instrumentation Application Block,一般把它翻译为日志和检测应用程序块,而2.0下却完全变成了日志应用程序块。2.在1.1下,每个LogEntry只能被记录到一个Sink,而这种情况在2.0下已经不复存在,对于每个

2006-04-17 23:37:00 723

转载 转贴:Enterprise Library2.0(1):Data Access Application Block

Data Access Application Block提供了通用的数据访问的功能,随着2.0版本的推出有了很大变化。一.改进在DAAB1.1里面我们知道Database方法返回或者创建一个DBCommandWrapper对象,而在DAAB2.0里面移除了DBCommandWrapper类,用ADO.NET2.0里面的DBCommand类代替实现类似的功能,这样使得DAAB跟我们的.NE

2006-04-17 23:35:00 1070

原创 My WebControl

前几天写Web Control,一阵不假思索,只图结果的狂写,总算是写了2个控件,再看了点资料,总结一下:    1.关于IPostBackDataHandler接口       实现两个方法即可:    public virtual void RaisePostDataChangedEvent() {         OnTextChanged(EventArgs.Empty)   

2006-04-15 17:34:00 631

原创 我的正则表达式

1、应用实例:   将字符串中的/n替换为"",一个是char,一个是string,一般方法(Replace)显然不行,正在郁闷,难道要用数组循环?想到了正则表达式,哈哈哈哈,一阵淫笑。              public static System.String Replace ( System.String input , System.String pattern , Syste

2006-04-01 16:16:00 420

转载 让插入到 innerHTML 中的 script 跑起来

  让插入到 innerHTML 中的 script 跑起来在做 ajax 编程时,我们常常需要将 xmlhttp 获取到的页面内容通过 innerHTML 来赋给某个容器(比如 div、span 或者 td 等),但是这里存在一个问题,就是我们将要赋给 innerHTML 的页面内容如果包含有脚本程序,这些脚本程序不管是外部脚本,还是内部脚本,可能都不会被执行。这个问题在某些时候微不足道,甚

2006-03-31 08:36:00 1204

转载 ADO.NET并发性

首先介绍一下什么叫“并发”:我们在使用多用户数据库时常常会碰到数据更新失败、删除失等情况,如果有多个用户且同时访问一个数据库则当他们的事务同时使用相同的数据时可能会发生并发问题。并发问题包括: 1.丢失或覆盖更新。(幻像读) 2.未确认的相关性(脏读)。3.不一致的分析(非重复读)。ADO.NET帮助你实现了三种类型的并发性:1、乐观(开放式)并发性:每个人都能访问DataSet在数据库中包含

2006-03-30 16:02:00 873

转载 C#面试题解答(二)

4、C#中的委托是什么?事件是不是一种委托? 委托是一个可以对方法进行引用的类。与其他的类不同,委托类具有一个签名,并且它只能对与其签名匹配的方法进行引用。这样,委托就等效于一个类型安全函数指针或一个回调。事件是一种委托。 5、ADO.NET相对于ADO等主要有什么改进? ADO以Recordset存储,而ADO.NET则以DataSet表示。Recordset看起来更像单表,如果让Records

2006-03-30 15:53:00 828

转载 C#面试题解答(一)

小弟最近在CSDN上找的C#面试题目,自己做了一下把题目和答案附上来,希望对大家有用。如有错误的地方还望大家指教!  1、C#中 property 与 attribute的区别,他们各有什么用处,这种机制的好处在哪里?    property和attribute汉语都称之为属性。不过property是指类向外提供的数据区域。而attribute则是描述对象在编译时或运行时属性的。这两者是有本质区别

2006-03-30 15:52:00 565

原创 C# Primer 读书心得

一、深拷贝与浅拷贝浅拷贝(Shallow copy):拷贝对象引用,指向同一对象深拷贝(Deep copy):创建对象副本二、值类型与引用类型值类型分配在栈上,引用类型分配在堆(Managed heap)上Struct是值类型,但是如果Struct的成员是引用类型,则成员依旧遵循浅拷贝语义。(两个Struct对象包含同一个引用类型成员)三、Const与ReadonlyC

2006-03-30 15:08:00 506

原创 Get string length which includes Chinese character

 Get the length of string that may include Chinese character.a = system.text.encoding.default.getbytes(str);a.length;In the this length calculation,Chinese Character will be 2, English charact

2006-03-18 11:47:00 611

转载 C#抽象工厂模式的几种实现方法及比较

利用设计模式可以使我们的代码更灵活,更容易扩展,更容易维护。各种面向对象的程序设计语言都提供了基本相同的机制:比如类、继承、派生、多态等等。但是又有各自的特色,C# 中的反射机制便是一个很重要的工具,好好地利用就可以在实际中发挥很大的作用。    我们来看一个例子:    我的程序中有需要一系列的对象,比如apple,orange…, 要想利用他们,我们就必须在程序中根据用户要求,然后一个个调用

2006-03-18 10:55:00 647

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除