很新的MVC我有我已經下載是在URL的開源應用程序的網頁...我如何知道這個頁面打哪個控制器?
http://localhost:51930/admin/login?databaseIssue=true
顯然我試着去尋找哪個控制器,並查看該映射到應用程序中。我如何解決這個問題?我應該搜索什麼以及在哪裏尋找?
另外我該如何確定哪些操作處理此視圖?
很新的MVC我有我已經下載是在URL的開源應用程序的網頁...我如何知道這個頁面打哪個控制器?
http://localhost:51930/admin/login?databaseIssue=true
顯然我試着去尋找哪個控制器,並查看該映射到應用程序中。我如何解決這個問題?我應該搜索什麼以及在哪裏尋找?
另外我該如何確定哪些操作處理此視圖?
這guide應該讓你開始。基本上你可以在global.asax.cs文件中使用一系列路由及其參數。那裏的指南還有一個關於自定義路線的部分。
通過違約路由規則,這是{controller}/{action}/
這將使在http://localhost:51930/admin/login?databaseIssue=trueadmin
控制器和行動Login
。
這應該會幫助你。這個工具太棒了!
http://haacked.com/archive/2008/03/13/url-routing-debugger.aspx
按照慣例,在形式上產生MVC路線
{app_base}/{controller}/{action}
退房this stackoverflow question以獲取更多信息。 因此,對於您的情況,您需要在Controllers
文件夾中尋找admin.cs
類。
global.asax是定義路由映射的地方。
你會看到/設置是這樣的:
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional }
因此默認情況下,你的榜樣映射到管理= {}控制器和登錄= {}行動和登錄操作方法將採取databaseissue =真位作爲參數。
所有這些答案都很好,除非有人可能已經創建了一個自定義路線到特定的網址。默認情況下,它們都是正確的,但是如果設置了自定義路由,它可能會轉到StackController並引用Overflow操作。
與上面建議的Jamie R Rytlweski一樣,在您的項目中引用RouteDebugger,在您的global.asax中添加鉤子並嘗試進入該頁面,它會顯示您的應用程序中定義的所有路由的列表,然後向您顯示哪些路線當前頁面匹配