dlmap

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
一直以为.text是生成的静态html,从路径上判断的,后来公司需要,下载了一个安装,发现所有的路径都是虚拟的,不由得对其实现的技术感兴趣,找个有时间的下午研究了一下,发现实现的原理也不复杂
        <httpHandlers>
            
<!-- Can not see to load asmx like .aspx, since we will grap all requests later, make sure these are processed by their default factory -->
            
<add verb="*" path="*.asmx" type="System.Web.Services.Protocols.WebServiceHandlerFactory, System.Web.Services, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
                validate
="false" />
            
<!--Since we are grabbing all requests after this, make sure Error.aspx does not rely on .Text -->
            
<add verb="*" path="Error.aspx" type="System.Web.UI.PageHandlerFactory" />
            
<!--This will process any ext mapped to aspnet_isapi.dll -->
            
<add verb="*" path="*" type="Dottext.Common.UrlManager.UrlReWriteHandlerFactory,Dottext.Common" />
        
</httpHandlers>
原来,对于所有的请求,是脱离开iis 而是由Dottext.Common.UrlManager.UrlReWriteHandlerFactory 处理,*.asmx Error.aspx除外。仔细的 trace 一会儿,感觉技术是非常的好,而且新颖,但是却没有运行的效率,在web.config中发现所有的请求又重新定义,分别交给其他的HandlerFactory处理,呵呵,经过非常复杂的处理才开始运行 Global.asax 中的代码,让我在debug吃够了苦头,不知道在哪里设断点  
posted on 2005-07-12 16:29  无色风  阅读(588)  评论(0编辑  收藏  举报