我有一个具有multitentant解决方案.NET应用mvc4。 这是成立的方式是,它试图获取客户端文件,如果没有找到它需要全局文件。
所有这一切的伟大工程,在我的RouteConfig.cs我有这条线在最底层:
routes.Add("FaviconRoute", new Route("favicon.ico", new StaticFileRouteHandler("favicon.ico", "Content", "", true)));
StaticFileRouteHandler是加载全局或租户文件我的自定义类和伟大工程。 不过我注意到,我得到了很多来自ELMAH(错误处理程序)误差修改是这样的:
404 Http The controller for path '/favicon.ico' was not found or does not implement IController.
所以,我一直在试图解决这一问题,但不能弄明白。 如果我把我的线高于routeconfig那么disturbes其他途径(所有路由变成site.com/favicon.ico?param1 ...)
我已经尝试使用routes.IgnoreRoute("{*favicon}", new { favicon = @"(.*/)?favicon.ico(/.*)?" });
但后来它不运行我的代码等所有租户得到全局文件。
我知道,图标不再需要在如果链接它的根,但我喜欢这个解决方案,我的静态文件处理程序选择正确的文件,而不是改变文件路径(我根本就不想发送到代码含有像〜/客户/客户端A / favicon.ico的路径的客户端
因此,这将是巨大的,如果它可以与简单地使我的路线更具体的,因此只有抓住图标的根,没有别的解决。 所以,我可以把它在routeconfig.cs顶部
最后,如果有人想看到完整的错误从ELMAH它在这里: http://db.tt/3QBxIxmb