Řešení chyby více ValidationSummary a ModelState.AddModelError   otázka

ASP.NET WebForms

ASP.NET má v sobě chybu, že pokud máme na stránce více prvků ValidationSummary (pro různé ValidationGroup) a přidáme vlastní chybu pomoci

ModelState.AddModelError("", "Text chyby")

tak se přidaná chyba zobrazí ve všech prvcích ValidationSummary tj. vícekrát.

Proto nezbývá než si text chyby zobrazovat nějak jinak (např. nastavovat text prvku Literal), ale pak ModelState.IsValid zůstane true. V důsledku toho je pak před renderováním stránky znovu volána metoda určená jako SelectMethod prvku FormView použitého pro vykreslování formuláře a ta "přeplácne" aktuální formulářová data původními daty z db.

Jedno řešení jak to obejít je přidávat "prázdnou" chybu

ModelState.AddModelError("", "");

což způsobí renderování prázdného li ve všech ValidationSummary (což snad tolik nevadí).

Neznáte náhodou někdo lepší řešení?

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback