我遇到了一些我無法理解的奇怪問題。我的一個控制器已停止工作,但如果我重命名它,那麼它工作正常。我沒有任何特殊的路由包裹這個控制器,它只是使用我的默認值。MVC3 - 找不到資源
爲了說明一下,我有一個名爲「Kangaroo」的控制器。在瀏覽器中,如果我到{server}/Kangaroo,那麼我會收到「The Resource can not be found」消息。但是,如果我轉到{server}/Kangaroo/Index,那麼我的頁面將正常加載。我的任何其他控制器上都沒有這個問題,只有這個。如果我將控制器(和我的視圖文件夾)重命名爲「Kangaroo2」,那麼它的工作原理非常好。
這裏是我的路線:
public class RouteDefinitions {
public static void AddRoutes(RouteCollection routes) {
routes.Ignore("{resource}.axd/{*pathInfo}");
routes.MapRoute("Resources",
"cache/{action}/{key}/{version}/{type}",
new { controller = "Cache",
action = "CacheContent",
key = "",
version = "",
type = "" });
routes.MapRoute("Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new {
controller = "Home",
action = "Index",
id = ""
} // Parameter defaults
);
}
}
有沒有人有什麼可以怎麼回事的想法?我認爲這可能只是一個奇怪的視覺工作室的事情,但重新啓動並沒有糾正這個問題。
處理「服務器」屬性的路由在哪裏?如果沒有專門處理'{server}/Kangaroo'的路線,它將會轉入您的默認路線,這將順利運行。你有沒有嘗試從Phil Haack的RouteDebugger看看發生了什麼(或Glimpse?)http://haacked.com/archive/2008/03/13/url-routing-debugger.aspx –
對不起,{server}是地址到我的服務器。即:http:// localhost/... – Brosto
我試過Glimpse,但沒有出現,當我得到資源未找到消息。在所有其他路線(甚至我的改名)中,Glimpse都能正常工作。 – Brosto