Entwickler-Ecke

Basistechnologien - Validierung Anzahl Zeichen einer Property


Talemantros - Fr 28.11.14 18:22
Titel: Validierung Anzahl Zeichen einer Property
Hallo zusammen,
ich würde gern eine Modellklasse validieren.

Zur Zeit


C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
        public bool IsValid
        {
            get
            {
                return !string.IsNullOrWhiteSpace(CompanyName) &&
                        !string.IsNullOrWhiteSpace(InvoiceName) &&
                        !string.IsNullOrWhiteSpace(Charge) &&
                        !string.IsNullOrWhiteSpace(Street) &&
                        !string.IsNullOrWhiteSpace(Postale) &&
                        !string.IsNullOrWhiteSpace(City) &&
                        DocumentPath.HasValue;
            }
        }


Ich würde gern noch hinzufügen, dass Charge genau 3 Zeichen haben muss.

Geht dies, oder soll ich das lieber über die TextChange der TextBox erledigen?

Danke

Gruß
Daniel


Ralf Jansen - Fr 28.11.14 18:47

Kannst du da einfach erledigen. In der UI solltest du das nur machen wenn du direktes Feedback (während der Eingabe) zum User brauchst. Und dann zusätzlich zum Test in der Modelklasse und nicht anstatt.

Auf die Länge solltest du nach dem bereits vorhanden Test auf IsNull machen um nicht nochmal auf Null prüfen zu müssen.


Talemantros - Sa 29.11.14 00:06

Hi
danke Ralf.
Wärst du so nett mir noch aufzuführen wie ich das in die Modellklasse einbinde mit welchen Befehl?

Danke

Gruß
Daniel


Th69 - Sa 29.11.14 10:06

Das solltest du aber jetzt selber hinbekommen :gruebel:


Talemantros - Sa 29.11.14 16:13

Würde ja nicht fragen, wenn ich es wissen würde.
string.textlenght oder so habe ich nicht gefunden


Ralf Jansen - Sa 29.11.14 16:20

String.Length [http://msdn.microsoft.com/de-de/library/system.string.length%28v=vs.110%29.aspx]


Talemantros - Sa 29.11.14 17:09

Argh

Mich nerven diese Kleinigkeiten :-(

Vielen Dank


Palladin007 - So 30.11.14 11:53

Talemantros, da gibt es einen ganz einfachen Trick: http://bit.ly/1uYMFno

Das funktioniert fast immer ;)