我有一個.net mvc4應用程序,它有一個multitentant解決方案。 這樣設置的方式是它試圖爲客戶端獲取一個文件,如果找不到它,則需要全局文件。favicon的路線
這一切的偉大工程,在我的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(/.*)?" });
嘗試,但那麼它不跑我代碼,因此所有租戶都可以獲得全局文件。
我知道如果你鏈接它,favicon不再需要在根目錄下,但是我喜歡這個解決方案,我的靜態文件處理程序選擇正確的文件而不是改變文件路徑(我根本不想要代碼發送到客戶端包含像〜/ clients/clientA/favicon.ico
所以這將是很好,如果它可以解決只是使我的路線更具體,所以它只捕獲在根和圖標的favicon所以我可以把它放在routeconfig.cs的頂部
最後,如果有人想看到從elmah完整的錯誤它在這裏:http://db.tt/3QBxIxmb
這麼長時間,因爲我這樣做,現在我不記得我是怎麼最終管理,但是我將回到它並看看這是否解決它! –