当前位置:  开发笔记 > 后端 > 正文

ASP.NET路由 - 自定义路由完全跳过Global.asax中的所有内容吗?

如何解决《ASP.NET路由-自定义路由完全跳过Global.asax中的所有内容吗?》经验,为你挑选了1个好方法。

我有一个简单的ASP.NET 3.5 SP1 Web窗体应用程序...我添加了System.Web.Routing DLL,我做了一个简单的路由,返回一个标准的ASP.NET页面作为"IHttpHandler".

一切都很好......除了HttpContext.Current.User为 ???

所以,我做了一点挖掘(我在Global.asax文件中的所有事件中放置了断点).通常,这些断点会受到影响(当我导航到标准的".aspx"页面时):

的Application_BeginRequest

Application_AuthenticateRequest

Application_EndRequest

但是,当使用ASP.NET Routing时......这些事件都没有被触发.我错过了什么吗?



1> Todd..:

假设您正在使用IIS6,另一种方法是定义"通配符"扩展处理程序.将这个简单的"全部捕获"映射添加到IIS6将使其能够处理您的无扩展请求.默认情况下,.NET安装程序将".aspx"映射到aspnet_isapi.dll,这就是.aspx扩展名的工作原理.要将没有扩展名的请求映射到APS.NET引擎,您必须告诉IIS查看每个请求.

这是一篇解释过程的快速文章:

http://haacked.com/archive/2008/11/26/asp.net-mvc-on-iis-6-walkthrough.aspx

希望有助于减少您网址的"蹩脚"因素.:)

-Todd

推荐阅读
yzh148448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有