У меня есть что-то вроде этого:передать несколько параметров в Html.BeginForm MVC
public ActionResult Create(int clubid)
{
var club = db.Clubs.Single(c=>c.Id == clubid);
ViewBag.Club = club;
Competition comp = db.Competitions.Create();
return View(comp)
}
и в моем .cshtml:
@Model Models.Competition
...
@Using(Html.BeginForm())
{
...
<input type="submit" value="Save" />
}
Это прекрасно работает со следующим сообщением действий:
[HttpPost]
public ActionResult Create(Competition comp)
{
if (ModelState.IsValid){...}
return RedirectToAction(...);
}
Однако, я хочу передать дополнительный параметр из объекта @ViewBag.Club
:
[HttpPoSt]
public ActionResult Create(int clubid, Competition comp){...}
Как это кодировать в BeginForm
?
Thanks @Johan - обработано. (Метод 2). –
@Johan есть ли большая разница между 2? – Vahx
@ Я имел в виду больше по безопасности, производительности или чему-либо еще? это старый или новый способ? – Vahx