我试图将网站URL更改和优化为SEO友好的网址。我的意思是我将〜/ 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更改为新的SEO友好URL。 我也不想丢失我的mvc URL模式
答案 0 :(得分:0)
您可以在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
用过。