0
我比较新的ASP .NET MVC3。 我知道当我通过Visual Studio创建我的控制器时,他们会响应某个URL。但是在哪里定义哪个控制器响应哪个URL?.NET MVC3 - Url和Controller的关系?
谢谢你的帮助。
我比较新的ASP .NET MVC3。 我知道当我通过Visual Studio创建我的控制器时,他们会响应某个URL。但是在哪里定义哪个控制器响应哪个URL?.NET MVC3 - Url和Controller的关系?
谢谢你的帮助。
看看你的global.asax
文件 - 路由表通常在那里定义。
这是URL和控制器/操作之间的映射。
查看官方ASP.NET MVC Routing Overview了解详情。
public class MvcApplication : System.Web.HttpApplication
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = "" } // Parameter defaults
);
}
protected void Application_Start()
{
RegisterRoutes(RouteTable.Routes);
}
}
好的,但后来:为什么我只看到“Home”控制器的注册,而没有为我的其他控制器注册,甚至没有看到“AccountController”。 – TTT 2012-04-18 13:13:18
它是如何知道controller =“Home”是指类“HomeController”? – TTT 2012-04-18 13:14:18
@ user1103990 - 约定。它知道它需要为传入的值添加Controller,并查找该名称的类型。 – Oded 2012-04-18 13:17:51