Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在路径/文件夹下注册HttpHandler_C#_Asp.net Mvc 3_Web Config_Httphandler - Fatal编程技术网

C# 在路径/文件夹下注册HttpHandler

C# 在路径/文件夹下注册HttpHandler,c#,asp.net-mvc-3,web-config,httphandler,C#,Asp.net Mvc 3,Web Config,Httphandler,为什么我不能在目录下注册HttpModule <system.web> <httpHandlers> <add verb="*" path="/home/facebookredirect.axd" type="Facebook.Web.FacebookAppRedirectHttpHandler, Facebook.Web" /> </httpHandlers> </system.web>

为什么我不能在目录下注册HttpModule

  <system.web>
    <httpHandlers>
      <add verb="*" path="/home/facebookredirect.axd" type="Facebook.Web.FacebookAppRedirectHttpHandler, Facebook.Web" />
    </httpHandlers>

  </system.web>


当请求到达
/home/facebookredirect.axd时,我得到一个404。为什么这不起作用

我希望
facebookredirect.axd
/home/

下面是frm,global.asx

routes.IgnoreRoute(“{resource}.axd/{*pathInfo}”)


基本上<代码>主页
不存在,存在主页控制器。但我想用这条路

这可能是因为在您的处理程序之前添加了一个通用的.axd处理程序(即.*.axd)


如果在添加处理程序之前删除此项,然后在添加处理程序后将其重新添加,则可以解决问题(免责声明:尚未尝试,只是继续验证)。

尝试添加
resourceType=“未指定”

所以它变成了

<add name="facebookredirect.axd" verb="*" path="/home/facebookredirect.axd" 
type="Facebook.Web.FacebookAppRedirectHttpHandler, Facebook.Web"
resourceType="Unspecified" />

至少,我有处理程序处理具有相同声明的文件夹

服务器上还应存在文件夹“Home”

path="/home/facebookredirect.axd"
应该是:

path="home/facebookredirect.axd"
您还需要从路由中排除此url:

routes.IgnoreRoute("home/{resource}.axd");

“Home”不必存在于服务器上,因为您没有格式良好的xml。请参阅system.web open标记。@它是有效的。我不想复制整件事。只需粘贴结束标记。对不起,啊。我很接近。我有一个变通的想法。谢谢:)你太棒了!
routes.IgnoreRoute("home/{resource}.axd");