How to pass parameters to Html.BeginForm(action, controller)

Gerry picture Gerry · Dec 17, 2013 · Viewed 15.6k times · Source

View

@using (Html.BeginForm())
{
    <input name= "number1" /><br />
    <input type="submit"/>
}

Contoller

[HttpPost]
public ActionResult GetNumber(int number1)
{
}

works fine whereas the following code

View

@using (Html.BeginForm("SomeAction","SomeContoller"))
{
    <input name= "number1" /><br />
    <input type="submit"/>
}

Controller

[HttpPost]
public ActionResult SomeAction(int number1)
{
}

is not working. I tried without the parameter its working then, but i am not able to get the value for number1 to this contoller. How would I do that?.

Thanks for your answer :)

Answer

user3111579 picture user3111579 · Dec 17, 2013

Do you use for controller name parameter something like "HomeController" or just "Home"? Because i think that only the prefix should be there.

@using (Html.BeginForm("MyAction", "Home"))
{
    <input name= "number1" /><br />
    <input type="submit"/>
}