在另一个控制器 MVC5 中带有参数的 ActionLink

ActionLink with parameter in another controller MVC5

我可以为另一个控制器创建一个动作 link 并且该动作方法需要一个参数吗?

普通动作link是:

@Html.ActionLink("Home", "Index", "Table1")

如果我们有一个动作link到控制器内部的动作方法:

@Html.ActionLink("Edit", "Edit", new { id=item.ID })

现在,如果我想转到另一个控制器中的操作 link 到操作方法怎么办?它会是什么样子?

即在控制器 Table2 中有一个采用参数 ParentID 的操作方法 Action1 我如何向该操作方法写入操作 link?

还有另一个 overload of ActionLink 帮助程序,可让您指定控制器名称、操作名称和路由值。

public static MvcHtmlString ActionLink(
    this HtmlHelper htmlHelper,
    string linkText,
    string actionName,
    string controllerName,
    object routeValues,
    object htmlAttributes
)

因此,如果您想渲染指向 Table2/Action1 的 a,您可以使用该重载

@Html.ActionLink("Edit", "Action1","Table2", new { ParentID = 100 },null)

您可以将硬编码的 100 更改为您的实际值。