Zdravím,
mám projekt v ASP.NET MVC a mám problém s odesláním formuláře. Mám stránku kde mám formulář pro vložení klienta a výpis klientů.
[HttpPost]
[AllowAnonymous]
[ValidateAntiForgeryToken]
public async Task<ActionResult> Insert(ClientViewModel modelClient, string returnUrl)
{
if (ModelState.IsValid)
{
Klient c = new Klient();
// naplnim datama
c.jmeno = modelClient.name;
c.prijmeni = modelClient.lastname;
c.datum_narozeni = modelClient.DateBirth;
c.telefon = modelClient.phone;
c.email = modelClient.email;
c.mesto = modelClient.city;
c.ulice = modelClient.street;
c.cisloPopisne = modelClient.homeNumber;
c.zamestnanec = new Zamestnanec();
c.zamestnanec.zamestnanecId = modelClient.employeeId;
this.clientRepository.Insert(c);
return RedirectToAction("ListByEmployee", "Client", new { employeeId = modelClient.employeeId });
}
return View(modelClient);
}
a tady je akce toho view na které formulář je
public ActionResult ListByEmployee(int employeeId, int branchId)
{
ViewBag.employee = this.employeeRepository.Get(employeeId);
ViewBag.employeeId = employeeId;
ViewBag.branchId = branchId;
ViewBag.clients = clientRepository.FindByEmployee(employeeId, 15, 0); // dodelat strankovani
return View();
}
Když vstup není validní tak se v kodu kde se zpracovava formualr vykonná return
View(modelClient); a měly by vyskočit hlášky validační. Jenže vyskočí chyba z akce, protože sem akci nepředal parametry int employeeId a int branchId tím pádem nemůže z databáze načíst záznamy aby je vypsala.
Zkoušel jsem teda použít příkaz RedirectToAction kde můžu předat parametry akci, ale nelze předat clientModel, aby mně vyskočily validační hlášky.
Nevíte někdo jak tento problém vyřešit?