gpt4 book ai didi

c# - 如果@html.actionlink 控件中没有提供 Controller 名称,它需要哪个 Controller ?

转载 作者:行者123 更新时间:2023-11-30 21:42:52 24 4
gpt4 key购买 nike

我有 2 个关于 Controller 的问题。

  1. 我看到下面的示例代码,想知道这个 actionlink 将方法调用哪个 Controller 。删除实际上是一个 Action 方法。如果两个 Controller 具有相同的操作方法名称“Delete”怎么办?

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

  2. 如果提交按钮元素中没有提及 Controller 名称或操作方法,如下面的代码,它将采用哪个 Controller 和操作方法?

    <input type="submit" value="Create" />

最佳答案

我会先回答第二个问题,因为它是第一个问题的一部分:

2) 当您不指定 Controller 时,它将使用当前 Controller (如果在部分 View 中它使用在请求时“正在执行”的 Controller )。

1) Controller 可以具有相同的 Action 名称,当您必须链接与当前 Controller 不同的 Controller 时,您需要指定它。

[编辑]

您的第二个问题已更改,所以我更新了我的答案...

提交按钮使用表单的“action”值,您可以按原样控制它:

@using (Html.BeginForm("ActionName", "ControllerName"))
{
...
<input type="submit" value="Create" />
}

或者直接用html标签

<form action="@Url.Action("ActionName", "ControllerName")" method="POST">

如果您想使用当前的 POST,您也可以省略 Controller 或/和操作参数。

关于c# - 如果@html.actionlink 控件中没有提供 Controller 名称,它需要哪个 Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42163976/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com