Я нахожусь на моем первом проекте MVC и все еще не полностью его освоил. Я столкнулся с этой проблемой:
У меня есть это в моем представлении (Home / Index.aspx)
<% using (Html.BeginForm()) { %>
<fieldset>
<p>
<%: Html.TextBox("A")%>
<%: Html.TextBox("B") %>
<%: Html.ActionLink("Submit", "Create", "Home")%>
</p>
</fieldset>
<% } %>
У меня есть это в моем контроллере (Controllers / HomeController.cs)
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create(FormCollection formValues)
{
return View("Index");
}
Я не изменил маршруты по умолчанию в global.asx
Когда я нажимаю "Отправить", я получаю сообщение "Ошибка не найдена". Однако, если я изменю ActionLink на
<input type="submit" value="Save" />
и метод в контроллере:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Index(FormCollection formValues)
{
return View("Index");
}
работает нормально.
Я немного запутался, потому что если я указываю точное имя метода действия и контроллер в ActionLink (<%: Html.ActionLink ("Submit", "Create", "Home")%>), почему это имеет значение, назову ли я этот метод Create или Index?