Уже определяет член с именем "Создать" с теми же типами параметров

У меня есть два метода и отличные от http глагола:

public class ProductImageController : Controller
{
     [HttpGet]
     public ViewResult Create(int productId)
          {
             return View(productId);
          }

      [HttpPost]
      public ViewResult Create(int productId)
          {
          }
}

но получить ошибку:

уже определяет член с именем "Создать" с теми же типами параметров

2 ответа

Вы не можете иметь несколько методов с одной и той же сигнатурой в одной и той же области видимости, то есть с тем же типом возврата и типом параметра.

РЕДАКТИРОВАТЬ - Похоже, вам нужно использовать это: Связанный вопрос

public class ProductImageController : Controller
{
     [HttpGet]
     public ViewResult Create(int productId)
     {
         return View(productId);
     }

    [HttpPost]
    [ActionName("Create")]
    public ViewResult CreatePost(int productId)
    {
        //return a View() somewhere in here
    }
}

Измените метод публикации действий, как показано ниже:

[HttpPost]
public ViewResult Create(FormCollection formValues)
{
       var productId = formValues["productId"];
}

ИЛИ ЖЕ

[HttpPost]
public ViewResult Create(int  productId, FormCollection formValues)
{
 //still using productId, formValues is just an additional parameter 
 //that doesn't need to be implemented.
}
Другие вопросы по тегам