我试图改变和优化我的网站网址,以搜索引擎优化友好的网址。我的意思是,我将~/Home/Contact之类的url更改为~/contact,等等。我也将~/Home/Index URL更改为~/home。
当我运行我的网站时,因为我将attr Route("~/home")添加到我的索引操作应用程序无法找到我的默认路由。
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapMvcAttributeRoutes();
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
我不知道如何才能改变我的MapRoute到我新的搜索引擎优化友好的网址。我不想丢失我的mvc URL模式
发布于 2019-10-05 19:02:09
您可以在App_Start文件夹中使用此类:
public static class RoutingConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
#region IgnoreRoutes
routes.IgnoreRoute("Content/{*pathInfo}");
routes.IgnoreRoute("Scripts/{*pathInfo}");
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.IgnoreRoute("favicon.ico");
routes.IgnoreRoute("{resource}.ico");
routes.IgnoreRoute("{resource}.png");
routes.IgnoreRoute("{resource}.jpg");
routes.IgnoreRoute("{resource}.gif");
routes.IgnoreRoute("{resource}.txt");
#endregion
routes.LowercaseUrls = true;
routes.MapMvcAttributeRoutes();
// AreaRegistration.RegisterAllAreas();
routes.MapRoute(
name: "Default",
url: "{controller}/{action}",
defaults:
new
{
controller = MVC.Home.Name,
action = MVC.Home.ActionNames.Index,
id = UrlParameter.Optional
},
namespaces: new[] {$"{typeof (RoutingConfig).Namespace}.Controllers"}
);
}
并在Global.asax.cs
Application_Start
方法中使用此方法。
RoutingConfig.RegisterRoutes(RouteTable.Routes);
我在T4MVC nuget package
上用过。
https://stackoverflow.com/questions/58251313
复制相似问题