`
justdoithz
  • 浏览: 48745 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论
文章列表
第一部分:页面状态介绍Http协议————“无状态协议”Web服务器每分钟对上千个用户进行管理的一种方式就是执行所谓的“无状态”链接。只要有一个希望浏览器返回一个页面、图像或其他资源的请求,就发生以下事情:1、连接到服务器2、告诉服务器想要的页面、图像或者其他项3、服务器发送请求的资源4、服务器切断连接,把用户忘的干干净净。也就是页面之间在Http协议下是没有任何关系的,这样就需要有状态管理来传输页面之间的数据。 WEB页面处理过程1、页面的一次往返处理:用户对服务器控件的一次操作,就可能引起页面的一次往返处理:页面被提交到服务器端,执行响应的事件处理代码,重建页面,然后返回到客户端。2、页面 ...
MIME(Multipurpose Internet Mail Extensions,多目的Internet邮件扩展)是创建用于电子邮件交换,网络文档,及企业网和Internet上的其他应用程序中的文件格式的规范。每个MIME格式包含一个MIME内容类型和指示存储在这个文件中的数据的子类型。每个MIME类型由两部分组成,前面是数据的大类别,例如声音audio、图象image等,后面定义具体的种类。MIME类型和子类型一般以类型/子类型的形式列出,比如网页的类型“text/html”。在HTTP中,MIME类型被定义在Content-Type header中。 例如,架设你要传送一个Microso ...
引言在Part.1中,我们了解了Http请求的处理过程以及其它一些运作原理。我们知道Http管道中有两个可用接口,一个是IHttpHandler,一个是IHttpModule,但在Part.1中,我并没有详细讲述如何对它们进行编程,只是轻描淡写地一笔带过。所 ...
Http请求处理流程概述思考“为什么在地址栏输入www.jzxue.com就可以看到建站学网站呢?”,类似于思考“为什么苹果是往地上掉不是往天上飘?”。对于普通访问者来说,这就像每天太阳东边升起西边落下一样是理所当然的;对于很多程序员来说,认为这个与己无关,不过是系统管理员或者网管员的责任。毕竟,IIS是 Windows 的一个组件,又不是 Asp.Net 的一个组成部分。而实际上,从你轻拍回车到页面呈现在你眼前的十分之一秒内,IIS和.Net Framework已经做了大量的幕后工作。你可能觉得了解这些幕后工作是如何运作的无关紧要,作为程序员的你只要保证开发出的程序可以高效地运行就可以了。然而 ...
在该方案中,应用程序使用 ASP.NET Forms 身份验证,该过程可使应用程序收集直接来自客户端请求者的凭据(如名称和密码),并对其可靠性做出自己的判断。虽然应用程序并不使用 IIS 身份验证,但 IIS 身份验证设置对于 ASP.NET Forms 验证过程非常重要。除非您决定拒绝所有不符合已启用的 IIS 身份验证方法标准的请求,否则必须启用 IIS“匿名访问”设置。 注意 如果没有启用 IIS“匿名访问”设置,不符合 IIS 身份验证标准的请求将被拒绝而且永远不会到达 ASP.NET 应用程序。 该方案中的数据流如下图所示。 该插图显示了以下的事件 ...
匿名方法相信很多人都听过,它是C#2.0的一个新特性,顾名思义,匿名方法就是没有名称的方法。那么在C#中的匿名方法有哪些好处,在C#中如何使用呢?匿名方法最明显的好处就是可以降低另写一个方法的工作量,另外一个好处就是可以访问调用者的变量,降低传参数的复杂度,下面就通过一些使用例子来具体看看。1、在事件中使用匿名方法下面是一个定时器的小例子,我们常规的写法如下: 常规写法<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://w ...
C#中提供了三种类型的计时器:1、基于 Windows 的标准计时器(System.Windows.Forms.Timer)2、基于服务器的计时器(System.Timers.Timer)3、线程计时器(System.Threading.Timer)下面我就通过一些小实验来具体分析三种计时器使用上面的异同点,特别是和线程有关的部分。实验例子截图:一、基于 Windows 的标准计时器(System.Windows.Forms.Timer)首先注意一点就是:Windows 计时器是为单线程环境设计的此计时器从Visual Basic 1.0 版起就存在于该产品中,并且基本上未做改动这个计时器是 ...
相信以前用过VB、Delphi,特别是VC的程序员应该对钩子程序都不陌生。在C#中我们同样可以使用钩子程序来实现特殊效果,比如当用户按下某个特殊键时提示,比如关闭应用程序前提示等。当然使用方法相对VC来说要稍微复杂一点,有的地方还不太方便,下面的例子中实现两个基本功能:1、按下Alt+F4时使窗口最小化2、关闭应用程序前提示不过目前只能捕获消息,不能屏蔽消息,我正在实验,也希望知道的高手能多多指教一、加入winuser.h中的定义因为钩子程序一般情况下都是在vc下使用的,在c#里面并没有对应的方法、结构等的定义,我们首先需要把winuser.h中的相关定义加入自己的类 钩子类型的枚举&l ...
ViewState的使用比较简单,一两句话就可以了。赋值:ViewState[key] = value;取值:value = ViewState[key];最主要的作用就是可以在当前页面保存值,ASP.NET的页面状态维护就是使用ViewState来实现的,基本上每一个ASPX页面都可以看到如下类似 ...
在.Net Framework中提供了代码访问安全性(Code Access Security),它的主要作用就是限制代码的使用权限。可以控制各种系统资源的访问权限、可以要求代码的调用方拥有特定的权限......。比如我们可以控制自己的dll只能在什么条件下由什么人调用,特别是在Asp.net中可以限制不同代码的安全权限,从源头限制住网络上的攻击等。 本文的主要内容如下: 1、在Asp.Net中使用自定义的信任级别 2、配置Sqlconnection的代码访问权限 3、实现和使用一个最简版的自定义权限 在Asp.Net中使用自定义的信任级别Asp.Net默认在C:\WINDO ...
序列化和反序列化我们可能经常会听到,其实通俗一点的解释,序列化就是把一个对象保存到一个文件或数据库字段中去,反序列化就是在适当的时候把这个文件再转化成原来的对象使用。我想最主要的作用有:1、在进程下次启动时读取上次保存的对象的信息 2、在不同的AppDomain或进程之间传递数据 3、在分布式应用系统中传递数据......在C#中常见的序列化的方法主要也有三个:BinaryFormatter、SoapFormatter、XML序列化本文就通过一个小例子主要说说这三种方法的具体使用和异同点这个例子就是使用三种不同的方式把一个Book对象进行序列化和反序列化,当然这个Book类首先是可以被序列化的。 ...
在软件开发尤其是框架和底层开发时,为了更灵活的控制代码,常常需要进行一些动态的操作。比如根据用户的输入等动态的调用类中的方法或者根据数据库表结构、用户要求动态的生成一些类,然后再动态的调用类中的方法。当然使用这些方式时会对性能有一点影响,具体使用过程中可以根据实际情况来定,不过一般的B/S开发中主要的瓶颈还是在数据库操作和网速方面,这点影响应该可以忽略的下面我就从这两个方面来说说动态代码的使用:一、反射的使用可以使用反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象中获取类型。然后,可以调用类型的方法或访问其字段和属性。需要使用的命名空间:System.Reflection反射的作用很 ...
在以前传统的开发中我们都知道,一个应用程序对应一个进程,并为该进程指定虚拟内存,由操作系统来映射实际的物理内存,有效的维护了进程之间的安全性。但另一方面,每一个进程都会消耗一定的系统资源,降低了性能,并且进程间的通信也比较麻烦。在.Net中推出了一个新的概念:应用程序域(AppDomain)。可以理解成很多应用程序域都可以运行在同一个.NET的进程中,可以降低系统消耗,同时不同的域之间互相隔离,在安全性方面有保障。另外对于同一个进程内不同域之间的通信也相对简单一点。应用程序域涉及的内容很多,本文就简要描述以下两个方面:1、如何创建、卸载域2、如何实现域间的通信一、如何创建、卸载域在.NET中提供 ...
以前开发项目时经常是自己开发一套用户权限管理系统进行验证,比较灵活。最近为了单点登录的问题又把Asp.Net自带的验证方式看了一遍,发现这种方式也比较方便,功能也还可以。在Asp.Net提供了三种常用的验证方式:Windows方式是和IIS结合起来可以实现基本、摘要、集成 Windows等身份验证;Passport方式是使用Windows Live ID的帐户来进行统一验证的;Forms方式是使用常见的表单来实现验证。本文主要就是讨论Forms验证方式普通实现、自定义实现、自定义角色提供程序、如何单点登录(可和MOSS结合)等几个方面。一、普通实现方式这种方式是最简单的,只需要配置一下就可以了。 ...
这三个对象我们在开发Asp.net程序时经常会用到,似乎很熟悉,但有时候又不太确定。本文通过一个简单的例子来直观的比较一下这三个对象的使用。HttpModule:Http模块,可以在页面处理前后、应用程序初始化、出错等时候加入自己的事件处理程序HttpHandler:Http处理程序,处理页面请求HttpHandlerFactory:用来创建Http处理程序,创建的同时可以附加自己的事件处理程序 例子很简单,就是在每个页面的头部加入一个版权声明。一、HttpModule这个对象我们经常用来进行统一的权限判断、日志等处理。例子代码: publicclassMyModule:IHttpModul ...
Global site tag (gtag.js) - Google Analytics