I tienen un controlador en un área llamada Admin
¿Por qué Html.BeginForm genera una acción vacía?
public class SiteVisitController : Controller
{
public ViewResult ReadyForCompletion() { ... }
public ViewResult CompleteAndExport() { ... }
}
y una vista (ReadyForCompletion.cshtml
) que tiene puestos de nuevo a una acción de un controlador diferente de la misma clase
@using (Html.BeginForm("CompleteAndExport", "SiteVisit"))
{
<input type="submit" value="Complete & Export" />
}
el HTML generado para esta forma tiene una acción en blanco:
<form action="" method="post"> <input type="submit" value="Complete & Export" />
</form>
Quiero saber por qué esto tiene ab ¿acción lacia? Para obtener más información, también añade en una
@Url.RouteUrl(new { controller = "ReadyForCompletion", action = "SiteVisit", area = "Admin" })
que también imprime una cadena vacía. Además, si uso un Html.BeginForm()
vacío, genera la acción correcta.
rutas son registrados
context.MapRoute(
"Admin_manyParams",
"Admin/{controller}/{action}/{id}/{actionId}",
new { action = "Index", id = UrlParameter.Optional, actionId = UrlParameter.Optional }
);
¿Puede mostrar las rutas registradas? –
Agregué las rutas registradas, pero estoy confundido por qué eso importaría ya que puedo hacer con éxito 'Html.BeginForm()' – kelloti