8

尝试实现分页支持后出现此错误。

我在 html 教程的这一步:http: //nerddinnerbook.s3.amazonaws.com/Part8.htm

4

2 回答 2

23

您收到的错误表明 ASP.NET MVC 找到了两个具有相同名称的操作,并且无法选择使用哪个操作。

如果您的 中有两个索引操作DinnersController.cs

public ActionResult Index() {

和:

public ActionResult Index(int? page) {

然后你应该删除第一个动作。因为第二个是第一个的“更新”版本。第二个 Action 接受以下请求:

/晚餐

/晚餐?页面=2

/晚餐/索引

/晚餐/索引?页面=2

随着 RegisterRoutes 的变化,它还接受以下请求:

/晚餐/页/2

您可以有两个具有相同名称的操作,提供一个用于保存(回发),您可以使用[AcceptVerbs(HttpVerbs.Post)]或仅装饰保存操作[HttpPost]

于 2011-09-27T20:39:44.417 回答
21

MVC 不支持在控制器中重载操作方法。在同一个控制器上不可能有两个具有不同方法签名的 Index() 操作。

为了使您正在测试的示例正常工作,您必须删除不接受任何参数的 Index() 操作,并将其替换为以可空 int 作为参数的操作。

于 2011-09-27T19:58:08.233 回答