0

Html.BeginForm("LogOn", "Home", FormMethod.Post)

登录 - 操作。

主页 - 控制器。

所以它会创建像 = Home/LogOn 这样的 Url。

但是如果我有动作LogOn(String s )LogOn(int i)在控制器内部Home并且两者都是HttpPost,那么那时会引发哪一个动作。意味着现在它正在给出例外:

“之间的暧昧

以下行动方法"

4

1 回答 1

0

在同一个控制器中不能有 2 个同名的动作。这样做的唯一方法是使两个操作之一只能通过以下方式访问[HttpPost]

public ActionResult LogOn(int i)
{
    ...
}

[HttpPost]
public ActionResult LogOn(string s)
{
    ...
}

现在,当您提交表单时,它将调用第二个操作。当您/home/logon在浏览器地址栏中键入(使用 GET 动词)时,它将执行第一个操作以可能呈现 LogOn 表单。

于 2012-09-21T10:06:09.177 回答