Вы должны указать, что форма отправляется с использованием GET http-запроса (а не публикации) и указать действие, на которое вы хотите перенаправить, чтобы вам не приходилось использовать RedirectToAction.
Например:
Контроллер:
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
public ActionResult NextAction(IndexModel model)
{
return View();
}
}
Модель:
public class IndexModel
{
public string StartDate { get; set; }
public string EndDate { get; set; }
public string Catalog { get; set; }
}
Вид:
@model MvcApplication22.Models.IndexModel
@using (Html.BeginForm("NextAction", "Home", FormMethod.Get))
{
<p>Start Date: @Html.EditorFor(m => m.StartDate)</p>
<p>End Date: @Html.EditorFor(m => m.EndDate)</p>
<p>Catalog: @Html.EditorFor(m => m.Catalog)</p>
<input type="submit" value="submit" />
}
Но учтите, что не рекомендуется вносить какие-либо изменения в вашу систему в запросе GET http. Если необходимо внести какие-либо изменения, они должны быть выполнены в запросе POST.