Html.ActionLink 语法

Html.ActionLink syntax

下面的代码应该打印出在模型中创建的流派的名称,作为在另一页中指向它们的超链接。 new { genre = genre.Name } 的目的是什么?我们已经为每个流派执行了 for 循环代码,其中代码给出了流派名称和视图的位置。那么最后一个参数有什么意义呢?

<ul>
 @foreach (var genre in Model)
 {
     <li>@Html.ActionLink(genre.Name, "Browse", new { genre = genre.Name })</li>
 }
</ul>

第三个参数是路由值对象:

来自MSDN

routeValues

Type: System.Object An object that contains the parameters for a route. The parameters are retrieved through reflection by examining the properties of the object. The object is typically created by using object initializer syntax.

将使用包含输入对象值的查询字符串生成 link。

例如(link 文本是第一个参数,在您的示例中是 genre.Name):

/Controller/Browse?genre=value

同意奥菲里斯的回答。以下是来自 W3School 的信息:

http://www.w3schools.com/aspnet/mvc_htmlhelpers.asp

亨利