☺ Programozási környezetek Validátorok Fazekas Judit PTI 2010
☺ Validáció lényege A WPF validációs mechanizmusa ún. ValidationRule-ok segítségével történik, ami az adatkötési fázisban ellenőrzi a bemenő információt, egy adott szabály függvényében. Ha az input érvényes, az adatkötés megtörténhet, egyébként pedig meg kell akadályozni. Továbbá a felhasználónak visszajelzést kell biztosítani arról, hogy tudja érvénytelen adatot próbált meg betáplálni, újra kell kezdenie a kitöltést.
WPF validáció ☺ A WPF kétfajta validációját támogatja az adatoknak: ValidationRules IDataErrorInfo
ValidationRule objektumok ☺ ValidationRule objektumok Egyéni validációs szabályok (ValidationRules) vagy a beépített ExceptionValidationRule Property alapú, beépített validátorok Saját Rule osztályok készítése Ez már a .NET 3.0 része is volt
IDataErrorInfo ☺ IDataErrorInfo interfész által implementált ellenőrzés .NET 3.5-ben jelent meg { Binding ValidatesOnDataErrors=true }
☺ Mindkét módszernek nagy szerepe van az adatok validációjának megvalósítása terén. Míg az első (ValidationRules) külön fogalmazódik meg az adatforrástól, újrafelhasználhatóvá téve a validációs szabályokat más vezérlőkön is, addig az utóbbi (IDataErrorInfo) az üzleti rétegbe, modelbe, adatforrásba fogalmazódik bele.
☺ Míg az előbbivel x különböző alkalmazás, amelyek ugyanazzal az adatforrással dolgoznak teljesen másképp validálhatják ugyanazokat az adatokat, addig az IDataErrorInfo esetén a validációt megvalósító kód közös lesz, tehát amit ezzel írok az szentírás lesz mindkettőnek. pl. az egyik WPF alkalmazás engedi 1900-2100-ig az évszámokat, a másik pedig egy XBAP alkalmazás, ami meg csak 2000-2050-ig /ugyan arról az adatbázisról, tábláról, mezőről van szó/.