很新的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中添加钩子并尝试进入该页面,它会显示您的应用程序中定义的所有路由的列表,然后向您显示哪些路线当前页面匹配