控制器类型"DinnersController"上的当前操作"索引"请求在以下操作方法之间不明确



我在尝试实现分页支持后得到此错误。

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

你得到的错误告诉ASP。. NET MVC发现了两个同名的操作,无法选择使用哪个。

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

public ActionResult Index() {

:

public ActionResult Index(int? page) {

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

/晚餐

/晚餐吗?= 2页

/晚餐/指数

/晚餐/索引?= 2页

随着RegisterRoutes的改变,它也接受以下请求:

/晚餐/页面/2

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

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

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

相关内容