Я знаю, что это не правильно, но ради иллюстрации я хотел бы сделать что-то вроде этого:
<%= Html.Button("Action", "Controller") %>
Моя цель состоит в том, чтобы сделать кнопку HTML, которая назовет метод действия моего контроллера MVC.
Нет необходимости использовать форму, если вы не хотите отправлять сообщения в действие. Кнопка ввода (не отправить) сделает свое дело.
<input type="button"
value="Go Somewhere Else"
onclick="location.href='<%: Url.Action("Action", "Controller") %>'" />
Вы можете использовать Url.Action, чтобы указать сгенерировать URL-адрес для действия контроллера, поэтому вы можете использовать одно из следующих:
<form method="post" action="<%: Url.Action("About", "Home") %>">
<input type="submit" value="Click me to go to /Home/About" />
</form>
или:
<form action="#">
<input type="submit" onclick="parent.location='<%: Url.Action("About", "Home") %>';return false;" value="Click me to go to /Home/About" />
<input type="submit" onclick="parent.location='<%: Url.Action("Register", "Account") %>';return false;" value="Click me to go to /Account/Register" />
</form>
Элемент HTML может отсылать только к содержащей его форме.
Поэтому вам нужно сделать форму, которая будет POST'ом к действию, затем поместить или
в форму.