它不起作用,因为在第 4 个参数上,ActionLink 正在寻找 object RouteValues,这基本上意味着这个值将被传递到您的控制器上。下一个参数(第 5 个)是 object HTMLAttributes,它将是您的链接元素的 HTML 属性:
public static MvcHtmlString ActionLink(
this HtmlHelper htmlHelper,
string linkText,
string actionName,
string controllerName,
object routeValues, -- for passing values on your controller
object htmlAttributes -- for html attributes like css, etc.
)
所以你需要把它改成:
<td>@Html.ActionLink("Sprawdź","Details","Home", new { intID = @Model.YourPropertyIdName }, new { @Id = Model.YourPropertyIdName, @class = "btn btn-info" })</td>
在您的控制器上,它应该与参数名称上的属性名称匹配。
如您所见,我在 ActionLink 上传递了 intID,因此它也应该在您的控制器上匹配:
public ActionResult Details(int intID = 0)
{
//TODO:
}