Вызов неоднозначен между следующим методом или свойствами в ASP.NET MVC RenderAction - PullRequest
2 голосов
/ 10 сентября 2010

Вызов работал нормально, пока я не установил ASP.NET MVC 1.0 RTM.

Error: CS0121: The call is ambiguous between the following methods or properties

фрагмент кода

<%Html.RenderAction("ProductItemList", "Product"); %>

Метод действия

public ActionResult ProductItemList()
{
  return View("~/Views/Product/ProductItemList.ascx", _repository.GetProductList().ToList());
}

1 Ответ

2 голосов
/ 10 сентября 2010

У вас есть два метода действия с одной и той же подписью, и RenderAction не может решить, какой из них использовать. Вам нужно как-то сделать действия уникальными.

Обычно я вижу это, когда есть действие для GET и POST, как без параметров, так и без параметров. Простой обходной путь - добавить FormCollection form в качестве параметра POST.

[HttpGet]
public ActionResult ProductItemList()
{
    //GET
}

[HttpPost]
public ActionResult ProductItemList(FormCollection form)
{
    //POST
}
...