Asp.net mvc Asp.Net MVC-特定于ActionLink(可能?)的Href

Asp.net mvc Asp.Net MVC-特定于ActionLink(可能?)的Href,asp.net-mvc,Asp.net Mvc,我在主页上: http://localhost/ http://localhost/Home (yeah, this one too, though I don't like it) 我有一个foreach循环,在我的类别中循环。我希望Html.ActionLink指向: http://localhost/site/{category-name} http://localhost/site/{category-name} 我目前有: Html.ActionLink(cat.cat

我在主页上:

http://localhost/

http://localhost/Home (yeah, this one too, though I don't like it)
我有一个foreach循环,在我的类别中循环。我希望Html.ActionLink指向:

http://localhost/site/{category-name}
    http://localhost/site/{category-name}
我目前有:

Html.ActionLink(cat.cat_name, "site", "", new { id = cat.cat_name}, null)
这表明:

http://localhost/Home/site/{cat_name}
我想摆脱这个家

编辑

无论我在哪一页,我都希望链接指向:

http://localhost/site/{category-name}
    http://localhost/site/{category-name}

明白了。添加了一条新路线:

    routes.MapRoute(
        "site",                                              // Route name
        "site/{id}",                           // URL with parameters
        new { controller = "Site", action = "Index", id = "" }  // Parameter defaults
    );
ActionLink:

<%= Html.ActionLink(cat.cat_name, "index", new {controller = "Site", action = "index", id = cat.cat_name}) %> 


不知道为什么我需要“索引”,但它可以工作。

明白了。添加了一条新路线:

    routes.MapRoute(
        "site",                                              // Route name
        "site/{id}",                           // URL with parameters
        new { controller = "Site", action = "Index", id = "" }  // Parameter defaults
    );
ActionLink:

<%= Html.ActionLink(cat.cat_name, "index", new {controller = "Site", action = "index", id = cat.cat_name}) %> 


不确定为什么我需要“索引”,但它可以工作。

您不需要特定的路线。只需使用
string-htmlhelp.RouteLink(string-linkText,object-routeValue)
helper:

<%= Html.RouteLink(cat.cat_name,
    new { controller = "Site", action = "Index", id = cat.cat_name }) %>

您不需要特定的路线。只需使用
string-htmlhelp.RouteLink(string-linkText,object-routeValue)
helper:

<%= Html.RouteLink(cat.cat_name,
    new { controller = "Site", action = "Index", id = cat.cat_name }) %>


我不确定是否100%遵循了问题,但看起来您使用的是默认路线和主控制器?如果是这种情况,那么您需要更改您的路线和/或您正在使用的控制器

我不确定是否100%遵循了问题,但看起来您使用的是默认路由和主控制器?如果是这种情况,那么您需要更改您的路线和/或您正在使用的控制器

我不确定我是否100%遵循了问题,但看起来您使用的是默认路由和主控制器?如果是这种情况,那么您可能希望更改您的路线和/或您正在使用的控制器。@YetAnotherDeveloper-将此作为答案发布,因为查看路线为我指明了正确的方向。谢谢我不确定我是否100%遵循了问题,但看起来您使用的是默认路由和主控制器?如果是这种情况,那么您可能希望更改您的路线和/或您正在使用的控制器。@YetAnotherDeveloper-将此作为答案发布,因为查看路线为我指明了正确的方向。谢谢