2

我为测试目的制作了一个自定义处理程序,如下所示:

namespace MVCHttpHandlerProject
{
    public class SomeHandler : IHttpHandler
    {
        public bool IsReusable
        {
            get { return true; }
        }

        public void ProcessRequest(HttpContext context)
        {
            context.Response.Write("SomeHandler test");
        }
    }
}

然后我添加到我的web.config下一行:

<httpHandlers> <add path="SomeHandler.axd" verb="*" type="MVCHttpHandlerProject.SomeHandler, MVCHttpHandlerProject" /></httpHandlers>

并且在<system.webServer>

<handlers> <add path="SomeHandler.axd" verb="*" type="MVCHttpHandlerProject.SomeHandler, MVCHttpHandlerProject" name="SomeHandler.axd"/> </handlers>

routes.IgnoreRoute("{resource}.axd/{*pathInfo}");我的 Global.asax.cs 没有被修改,看起来与在 RegisterRoutes 方法中生成时完全相同。

不过,当我尝试访问“http://localhost/Home/SomeHandler.axd”时,会出现“找不到资源”错误。为什么?我错过了什么?我应该如何解决这个问题?

4

1 回答 1

2

您应该请求http://localhost/SomeHandler.axd而不是http://localhost/Home/SomeHandler.axd. 没有Home

于 2012-09-21T06:49:38.703 回答