为什么这两种方法都不明确

时间:2014-12-20 18:18:44

标签: asp.net-mvc asp.net-mvc-4

我收到的关于我的功能含糊不清的错误

  

当前的行动请求'索引'在控制器类型上   ' ProductController的'以下操作方法之间不明确:   System.Web.Mvc.ActionResult索引(bconn.ui.Models.Vm,Int32,Int32)on   键入bconn.ui.Controllers.ProductController   System.Web.Mvc.ActionResult索引(System.String,System.String)上   键入bconn.ui.Controllers.ProductController

如您所见,一个控制器具有以下签名

public ActionResult Index(Vm model, int startIndex, int pageSize)

另一个

public ActionResult Index(string selected, string nothing)

由于一个人的int值不可为空,我无法看到这里有什么歧义?

1 个答案:

答案 0 :(得分:3)

这不像普通班。如果您有操作方法,除非使用[HttpGet][HttpPost]属性来区分它们,否则不能重载它们。

例如,您需要:

[HttpGet]
public ActionResult Index(Vm model, int startIndex, int pageSize) 
{
    ...
}

[HttpPost]
public ActionResult Index(string selected, string nothing)
{
    ...
}