У меня есть контроллер в области под названием Admin
public class SiteVisitController : Controller
{
public ViewResult ReadyForCompletion() { ... }
public ViewResult CompleteAndExport() { ... }
}
и представление (ReadyForCompletion.cshtml
), которое отправляет сообщения в другое действие контроллера в том же классе
@using (Html.BeginForm( "CompleteAndExport", "SiteVisit" ))
{
<input type="submit" value="Complete & Export" />
}
Сгенерированный HTML-код для этой формы содержит пустое действие:
<form action="" method="post"> <input type="submit" value="Complete & Export" />
</form>
Я хочу знать , почему в этом поле отсутствует действие? Для получения дополнительной информации я также добавил в
@Url.RouteUrl(new { controller = "ReadyForCompletion", action = "SiteVisit", area = "Admin" })
, который также распечатал пустую строку. Кроме того, если я использую пустой Html.BeginForm()
, он генерирует правильное действие.
Зарегистрированные маршруты:
context.MapRoute(
"Admin_manyParams",
"Admin/{controller}/{action}/{id}/{actionId}",
new { action = "Index", id = UrlParameter.Optional, actionId = UrlParameter.Optional }
);