0

我试图创建一个带有段 www.example.com/Store* /Segment1/Segment2/Segment3 * 的 Html.ActionLink。这些段是可选的。

我定义了以下路线:

routes.MapRoute("Store",
"{controller}/{Segment1}/{Segment2}/{Segment3}",  
new
{
controller = "Store",
action = "Show",
segment1 = UrlParameter.Optional,
segment2 = UrlParameter.Optional,
segment3 = UrlParameter.Optional
}
);

不应在 URL 中看到该操作。我似乎无法创建有效链接。

在视图中,我生成如下链接:

<ul>
@foreach (KeyValuePair<string, string> item in ViewBag.LinkList){<li>@Html.ActionLink(item.Key, "Show", "Store", new { item.Value })</li>}
</ul>

当我在地址栏中输入 url 时,一切顺利(Action 可以将这些段作为参数读取),但我无法正确获取 Html.ActionLink。任何人都可以给我这个路线的工作 ActionLink 的例子吗?谢谢!

4

1 回答 1

0

您定义了segment2两次默认值,忘记了segment3哪个会破坏整个事情,因为您没有在ActionLink调用中定义段变量。

于 2012-02-09T09:46:40.130 回答