Sziasztok!
Blazorrel foglalkozik itt valaki? Egy angular app-ot kezdtem el átírni, és előjött egy hiba, amit sehogy sem tudok megoldani.
Van egy formom, a model-validationt attribute-okkal oldom meg. Írtam egy saját attribute-ot, RequiredIf, megadhatod benne, hogy akkor legyen required a field, ha egy másik property-nek az értéke egyezik azzal, ami megadsz.
pl:
[RequiredIf(nameof(Foo), new[] { "Bar"}, ErrorMessage = "Category must be set.")]
public int? CategoryId { get; set; }
Itt a másik property a Foo, ha Bar az értéke, akkor a CategoryId nem lehet null vagy 0.
Ezt a modellt használom a Blazor formban, és a validation kicsit furán működik. Foo-t beállítottam Bar-nak. Raktam a formba egy ValidationSummary-t is, és az adott field-hez tartozó ValidationMessage-t is.
Ha nyomok egy submit-ot, akkor a ValidationSummary-ben megjelenik az error, de az input mellett nem.
Ha megváltoztatom az ehhez a fieldhez tartozó inputot, akkor megjelenik a ValidationSummary-ben, így ott kétszer szerepel az error, közben megjelenik a ValidationMessage is, és az input is piros lesz.
Ha most megint nyomok egy submitot, akkor a summary-ből az egyik error eltűnik, a field mellet message is, és az input zöldre vált.
Csatolok képet, van ott egy Amount field is, az sima int (nem nullable), és egy Range[(1, int.Max)] van rajta, az teljesen jól működik.
Nyomok egy submitot:
Átírom a Category értékét:
Megint nyomok egy submitot:
Valakinek esetleg van ötlete?
[ Szerkesztve ]