易截截图软件、单文件、免安装、纯绿色、仅160KB

ASP.NET页面与IIS底层交互和工作原理详解

第一回:
引言
我查阅过不少Asp.Net的书籍,发现大多数作者都是站在一个比较高的层次上讲解Asp.Net。他们耐心、细致地告诉你如何一步步拖放控件、设置控件属性、编写CodeBehind代码,以实现某个特定的功能。
这种做法,实际上是回答了“如何去做”的问题,却没有回答“为什么可以这样做”的问题。
尽管我很推崇 悉江华 先生的《圣殿祭祀的Asp.Net开发详解》一书,但当我翻看了一下其对角色(Role) 和 用户(Member)的讲解时,我决定跳过去直接读后面的章节。因为我发现他也随了大流,对这部分的讲解停留在“如何去做”的层面上。我相信像悉先生 这样的牛人是不可能不了解底层运作原理的,仅仅是因为那本书原本就已经很厚了吧。
当你按“如何去做”所讲解的内容去开发程序的时候,对于你的用户,你仍是一名程序员;但对于实现了MembershipProvider 和 RoleProvider 抽象类的微软开发人员来说,你已经成了他们的一个用户。
NOTE:我既不反对一些作者只讲解“如何去做”,也不反对你只学“如何去做”,这样也有它的好处,就是可以快速开发。我只是建议多掌握一点底层知识,对一些问题会有更好的理解。
希望通过这一系列文章的讲解,可以让你更好的理解Asp.Net的运作原理和做以了解。
Http请求处理流程概述
思考“为什么在地址栏输入www.tracefact.net就可以看到张子阳的个人空间?”,类似于思考“为什么苹果是往地上掉不是往天上飘?”。对于普通访问者来说,这就像每天太阳东边升起西边落下一样是理所当然的;对于很多程序员来说,认为这个与己无关,不过是系统管理员或者网管员的责任。毕竟,IIS是 Windows 的一个组件,又不是 Asp.Net 的一个组成部分。而实际上,从你轻拍回车到页面呈现在你眼前的十分之一秒内,IIS和.Net Framework已经做了大量的幕后工作。
你可能觉得了解这些幕后工作是如何运作的无关紧要,作为程序员的你只要保证开发出的程序可以高效地运行就可以了。然而,在开发过程中,你却发现常常需要使用诸如 HttpContext 这样的类。这个时候,你可曾思考过这些类的构成和类的实体是如何创建的?你可能简单地回答:HttpContext代表当前请求的一个上下文环境。可你又知道IIS 、Framework、Asp.Net 是如何协同工作处理每个Http请求、如何区分不同的请求、IIS、Framework、Asp.Net三者之间的数据如何流动么?
回答上面这些问题,首先需要了解IIS


相关文档:

ASP.NET中代码内嵌和代码后置的区别与实现方式

1.代码后置
   代码后置是微软的一项技术,也是我们编写ASP.NET常用的编码方式。具体方式就像页面文件(.aspx)和代码文件(.cs)两个文件相互关联
   所构成的页面。一边情况下,.aspx文件中没有代码、只有空间和HTML代码,而.cs文件中编写相关的代码操作。
   这样做的好处就是:使代码与页 ......

Asp.net treeview实现无限级树

最近研究了一下treeview,发现有两种实现无限级树的方法,文字不想多写,直入主题。
先看看数据库表的设计,数据表主要包括ID,Name,ParentID这三项,其中ID是主键,ParentID对应节点的父节点:
方法一:用递归遍历数据,并将节点逐个添加到treeview中去。
1.先进行数据库连接和数据的读取,并将根节点先添加进treeview ......

ASP.NET中的n种路径


在web服务器端开发中经常会遇到各种不同形式的path,而且经常记不清楚如何获取到某种特定格式,今天抽了点时间把常用的path获取方法与格式做了一个简单的对照表,以备日后查用。
Request获取的信息
Request.AppRelativeCurrentExecutionFilePath           &nb ......

asp.net上传文件格式限制

if(MyFile.PostedFile.ContentType   !=   "image/gif"    
  &&   MyFile.PostedFile.ContentType   !=   "image/jpg"    
  &&   MyFile.PostedFile.ContentType   !=   "image/pjpeg"    
  && &n ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号