Asp.net mvc 4 法维康路线

Asp.net mvc 4 法维康路线,asp.net-mvc-4,asp.net-mvc-routing,favicon,Asp.net Mvc 4,Asp.net Mvc Routing,Favicon,我有一个.NETMVC4应用程序,它有一个多分量解决方案。 其设置方式是,它尝试为客户端获取一个文件,如果找不到,则获取全局文件 所有这些都非常有效,在我的RouteConfig.cs中,我在最下面有一行: routes.Add("FaviconRoute", new Route("favicon.ico", new StaticFileRouteHandler("favicon.ico", "Content", "", true))); StaticFileRouteHandler是我的自定

我有一个.NETMVC4应用程序,它有一个多分量解决方案。 其设置方式是,它尝试为客户端获取一个文件,如果找不到,则获取全局文件

所有这些都非常有效,在我的RouteConfig.cs中,我在最下面有一行:

routes.Add("FaviconRoute", new Route("favicon.ico", new StaticFileRouteHandler("favicon.ico", "Content", "", true)));
StaticFileRouteHandler是我的自定义类,它可以加载全局文件或租户文件,效果非常好。 然而,我注意到我从elmah(错误处理程序)那里得到了很多错误,如下所示:

404 Http路径“/favicon.ico”的控制器未找到或未实现IController。

所以我一直在试图解决这个问题,但却无法解决。如果我将线路放在routeconfig的较高位置,则会干扰其他线路(所有线路都变成site.com/favicon.ico?param1…)

我尝试过使用
routes.IgnoreRoute({*favicon}),new{favicon=@”(.*/)?favicon.ico(/.*)”

但是它不会运行我的代码,因此所有租户都会获得全局文件

我知道如果链接favicon,它就不再需要位于根目录中,但我喜欢这种解决方案,即我的静态文件处理程序选择正确的文件,而不是更改文件路径(我只是不希望发送给客户端的代码包含类似~/clients/clientA/favicon.ico的路径)

因此,如果可以通过简单地使我的路线更具体来解决这一问题,那将是一件非常棒的事情,这样它就只在根中捕捉favicon,而不捕捉其他内容。因此,我可以将它放在routeconfig.cs的顶部

最后,如果有人想看到elmah的完整错误,请点击此处:

这个答案有用吗:

“关闭Firefox,清除历史记录,然后重试。”

此回答是否有帮助:


“关闭Firefox,清除历史记录,然后再试一次。”

我这么做已经很久了,现在我不记得我到底是怎么做到的,但我会重新开始,看看这是否解决了问题!我这么做已经很久了,现在我不记得我到底是怎么做到的,但我会重新开始,看看这是否解决了问题!
routes.Add(new Route("favicon.ico", new StopRoutingHandler()));