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

ASP.NET 运行机制总结


ASP.NET 运行机制总结
     这些天看了一些关于ASP.NET底层的文章,受益匪浅。
     为什么要了解这些底层呢?我觉得做为一个喜欢开发ASP.NET程序员,我不们不仅要知道“怎么做”,我们更应该知道“为什么这么做”,这样的我们才能做得更好。这样我们才能把准确的代码放置准确的位置。
     ASP.NET 像一个全自动的洗车房,车开进车房并通过层层洗刷,最后出来一部闪亮的车。
     IIS维护着一个映射表(图1)用来指定:什么样的请求由什么程序来处理该请求,比如说:所请求资源的扩展名为.asp的请求,由"asp.dll" 处理该请求,这个“DLL”文件称为ISAPI扩展程序。
(图1)
     当一个请求从浏览器发出,到达服务器端,IIS收到该请求。IIS根据所请求资源的扩展名,将该请求转交给相应的ISAPI扩展程序来处理。那扩展名为.aspx的请求是怎么样的呢?同样也是由相应的ISAPI处理该请求,也就是aspnet_isapi.dll,但这只是第一站,aspnet_isapi 还要将该请求转交给ASP.NET来处理。如下图(2)。
(图2)
     IIS运行在一个InetInfo.exe的进程中,IIS收到扩展名为.aspx请求后,加载ASP.NET ISAPI---"aspnet_isapi.dll",ASP.NET ISAPI 会启动一个名为"aspnet_wp.exe"的工作进程,“aspnet_wp.exe”启动时会加载CLR、创建appDomain,在创建对appDomain时会实例化一个名为ISAPIRuntime类,ISAPIRuntime是Asp.net与asp.net ISAPI通信的桥梁。IIS与ASP.NET ISAPI都是非托管程序,而ASP.NET  HttpRuntime则是一个托管程序,ASP.NET ISAPI 通过COM的方式与ASP.NET Http Runtime基于命名管道通信。ISAPIRuntime是一个特殊的类,它实现接口IISAPIRuntime,该接口基于COM。所以说非托管程序可以以COM的方式访问。
 
Code
[ComImport, Guid("08a2c56f-7c16-41c1-a8be-432917a1a2d1"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
public interface IISAPIRuntime
{
    void StartProcessing();
    void StopProcessing();
    [return: MarshalAs(UnmanagedType.I4)]
    int ProcessRequest(


相关文档:

第一章 ASP.NET Ajax简介

第一章      ASP.NET Ajax简介
1.1什么是Ajax
一.什么是Ajax
Ajax是Asynchronous JavaScript and XML(异步JavaScript 和XML)的缩写,由著名用户体验专家Jesse-James Garrett在2005年2月18日发表的一篇名为Ajax:a New Approach to Web Applications文章中首先提出。
Ajax并不是只包含JavaScri ......

ASP.NET实现进度条


建立一个WEB工程,添加新项->HTML页面,命名为ProgressBar.htm,内容如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" id="mainWindo ......

ASP.NET SQL 注入免费解决方案

 UrlScan的3.1是一个安全的工具,限制了IIS的HTTP请求将处理类型。 通过阻止特定的HTTP请求,在URLScan 3.1安全工具有助于防止对服务器应用程序可能有害的请求。  UrlScan的3.1是URLScan 2.5的更新版本。支持IIS 5.1中,IIS 6.0和IIS 7.0在Windows Vista和Windows Server 2008。下载地址http://download.csdn.net ......

asp.net页面实现回车点击按钮JavaScript实现

回车点击按钮
只需在.aspx页面代码中加入一段JavaScript即可:
<script type="text/javascript" language="javascript">  
      document.onkeydown   =   Check;  
      function   Check(){ &n ......

使用asp.net读取并显示excel数据

Microsoft Office Excel是一个很好的电子表格应用程序,在本文中,it同学会将教给你看到如何使用ASP.NET从Excel电子表格读取并显示显示数据。
  我们的ASP页面将在远程服务器上,来读取我们的桌面Excel文件。首先,我们必须把它上传到远程服务器,然后retrive数据。因此,我们首先设计一个表格,上传到服务器。我们必 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号