【问题标题】:How do i rewrite my URL in asp.net MVC to make it more SEO friendly?如何在 asp.net MVC 中重写我的 URL 以使其对 SEO 更友好?
【发布时间】:2013-03-28 17:53:16
【问题描述】:

我有一个小网站,我需要重写一些 url。我制作了一个小型通用网站来帮助我托管体育子网站。我创建了一个适合所有人的网站。

当我链接到特定运动时,例如。足球现在看起来像这样:

/home/show/3

我真正希望它看起来像这样

/家庭/运动/足球

我该怎么做呢?是否可以对其进行配置,以便在另一个网站上显示这样的书籍:/home/books/thriller 等。

谢谢

【问题讨论】:

    标签: asp.net-mvc url-rewriting


    【解决方案1】:

    将条目添加到路由表

    routes.MapRoute(
                    "Default",                                              // Route name
                    "{controller}/{action}/{cat}",                           // URL with parameters
                    new { controller = "Home", action = "Index", cat = "" }  // Parameter defaults
                );
    

    现在。在您的视图或控制器上编写您的代码,以设置 id 以在您的代码中进行处理。

    var id = 0;
        if (Request.RequestContext.RouteData.Values["cat"] != null)
        {
            if (int.TryParse(Request.RequestContext.RouteData.GetRequiredString("cat"), out id) == false)
            {
                string routeName = Request.RequestContext.RouteData.GetRequiredString("cat");
                id = new RoutingRepository().GetTabIDByRoute(routeName); // here you need to get the id for text passed in url
            }
        }
    

    【讨论】:

    • 那是增加一条额外的路线吗?默认我有控制器/动作/ID - 我也应该有一个控制器/动作/猫 - 并处理两者?
    • 这取决于...但您只需将其替换为已有的
    猜你喜欢
    • 2013-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-06
    相关资源
    最近更新 更多