我正在尝试学习MVC,需要帮助理解MVC中URL重写和URL路由之间的区别。
答案 0 :(得分:1)
URL路由是由MVC完成的路由,当我们在url空间中键入内容时,它将首先调用
RouteConfig.RegisterRoutes(RouteTable.Routes);
这是在Global.asax.cs Application_Start()
方法中,如果你设置一个断点,那么你可以理解路由方法,那么它将调用
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
在App_start => RouteConfig类中,您可以在此处找到RegisterRoutes方法。在这里我们可以定义url的结构,在这里它将决定应该调用哪个控制器和动作。 此过程是网址
URL重写是完整的差异概念 假设我们的控制器名称为客户,操作名称为登录 当我们运行应用程序时,我们的URL将如下所示 http://Localhost:233/Customer/Login 但是客户端仅为了SEO目的而结束了http://Localhost:233/Login 为了实现这一点,我们必须通过保持相同的控制器和操作名称来重写URL 要了解有关网址重写的更多信息,我已在http://grandhah.blogspot.in/2015/07/url-rewriting-in-mvc-4-attribute-routing.html中解释了属性重写。请访问并告诉我您已经足够澄清了...美好的一天