如何获取对默认ASP.NET页面处理程序或Web服务处理程序的引用?
发布时间:2020-12-16 03:26:59 所属栏目:asp.Net 来源:网络整理
导读:考虑一个包含以下httpHandlers声明的Web.config文件: httpHandlers add verb="*" path="*" type="MyWebApp.TotalHandlerFactory"//httpHandlers 换句话说,这个处理程序工厂想要“看到”所有传入的请求,以便它有机会处理它们.但是,它不一定要实际处理所有这
考虑一个包含以下httpHandlers声明的Web.config文件:
<httpHandlers> <add verb="*" path="*" type="MyWebApp.TotalHandlerFactory"/> </httpHandlers> 换句话说,这个处理程序工厂想要“看到”所有传入的请求,以便它有机会处理它们.但是,它不一定要实际处理所有这些,只有那些满足特定运行时条件的那些: public sealed class TotalHandlerFactory : IHttpHandlerFactory { public IHttpHandler GetHandler(HttpContext context,string requestType,string url,string pathTranslated) { if (some condition is true) return new MySpecialHttpHandler(); return null; } public void ReleaseHandler(IHttpHandler handler) { } } 但是,这样做会完全覆盖默认的ASP.NET处理程序,这意味着ASP.NET页面和Web服务不再起作用.我只是为每个不符合“if”中的“某些条件”的URL获取空白页面.因此,似乎返回null是错误的做法. 那么我需要返回什么才能使ASP.NET页面和Web服务仍然正常处理? 解决方法
我原以为最简单的方法是让你的类从System.Web.UI.PageHandlerFactory继承,然后在else子句中调用base.GetHandler().
public sealed class TotalHandlerFactory : System.Web.UI.PageHandlerFactory { public IHttpHandler GetHandler(HttpContext context,string pathTranslated) { if (some condition is true) return new MySpecialHttpHandler(); else return base.GetHandler(context,requestType,url,pathTranslated) } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – WebMethod以JSON格式返回值
- asp.net-mvc – 基本MVC:“modelItem =>”做什么?
- asp.net-mvc – asp.net mvc windows authentication – 以
- asp.net-mvc – ModelState.IsValid总是返回false
- ASP.Net MVC6是否支持OAuth 2承载令牌?
- asp.net – 间歇性SQL连接错误
- asp.net – Web应用程序 – 结合还是分开?
- asp.net-mvc-4 – 登录后WebSecurity.CurrentUserName和Use
- asp.net-mvc – MVC 5防止通过iframe访问内容
- asp.net-mvc – ASP.NET MVC Windows Azure组织身份验证
推荐文章
站长推荐
- asp.net-mvc – SignalR持久连接的超时是多少?
- asp.net – IIS7:服务应用程序池“YYYYY”的进程
- asp.net-mvc – 在ASP.NET MVC4中检测IE8
- ASP.NET MVC,Ninject,每个请求多个构造函数的单个
- asp.net-mvc – ASP.NET MVC&Windsor.Castle
- asp.net-mvc-2 – 无法加载文件或程序集’System
- 如何在ASP.Net页面上显示URL列表作为超链接(C#)
- asp.net-web-api – 如何访问所有querystring参数
- asp.net – 如何LoadControl一个使用VaryByContr
- asp.net-mvc-3 – 可以重定向到新页面的Ajax.Beg
热点阅读