2013-03-19 14 views
8

In einer ASP.NET MVC4-Anwendung verwenden wir FluentValidation zur Validierung unserer Modelle. In bestimmten Fällen möchten wir nur eine Eigenschaft validieren, wenn eine andere Eigenschaft einen Wert hat. Wir verwenden das Schlüsselwort "When", um dies zu erreichen. Eine einfache Validierungsklasse sieht wie folgt aus:fließende Validierung mit auf Client-Seite

Wir hätten gerne eine Validierung auf Kundenseite. Ich habe versucht, einen benutzerdefinierten FluentValidationPropertyValidator zu erstellen. Aber ich kann keinen Weg finden, den Teil der Validierungsregel zu übernehmen. Kann mir jemand in die richtige Richtung zeigen?

+2

nach einigem mehr Forschung herausgefunden, dass dies eine Menge Arbeit erfordern würde, mehr Info: https://fluentvalidation.codeplex.com/discussions/229346 –

Antwort

0

Einige Validierungen in FluentValidation einfach nicht die clientseitige Validierung unterstützen:

Von Dokumentation (http://fluentvalidation.codeplex.com/wikipage?title=mvc&referringTitle=Documentation):

Beachten Sie, dass FluentValidation auch Client-Seite mit ASP.NET MVC arbeiten Validierung, aber nicht alle Regeln werden unterstützt. Beispiel: Alle Regeln, die mit einer Bedingung (mit Wenn/Nicht vorhanden) definiert wurden, benutzerdefinierte Validatoren oder Aufrufe von Must werden auf der Clientseite nicht ausgeführt. Die folgenden Prüfungen werden auf dem Client unterstützt:

* NotNull/NotEmpty * Spiele (regex) * InclusiveBetween (Bereich) * Credit * E-Mail * EqualTo (Cross-Eigenschaft Gleichheitsvergleich) * Länge