Das Format der Mitarbeiterzahl in ASP.NET CORE MVC -Lehrermanagementsystem kann nicht validierenC#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Das Format der Mitarbeiterzahl in ASP.NET CORE MVC -Lehrermanagementsystem kann nicht validieren

Post by Anonymous »

Ich bin ein vollständiger Anfänger von C# und ASP.NET Core und arbeitet am Auftrag zum Aufbau eines Lehrermanagementsystems. Ich versuche, die Validierung für Mitarbeiternummern zu implementieren, die mit "T" gefolgt von Ziffern beginnen müssen, aber ich kämpfe darum, es zum Laufen zu bringen. < /P>
Hier ist mein aktueller Validierungscode im Controller:

Code: Select all

if (string.IsNullOrEmpty(NewTeacher.TeacherEmployeeNumber) ||
!NewTeacher.TeacherEmployeeNumber.StartsWith("T") ||
!System.Text.RegularExpressions.Regex.IsMatch(NewTeacher.TeacherEmployeeNumber.Substring(1), @"^\d+$"))
{
ModelState.AddModelError("TeacherEmployeeNumber", "Employee number must start with 'T' followed by digits");
isValid = false;
}
< /code>
, aber ich erhalte einen Fehler < /p>

System.ArgumentoutoFrangeException
< /blockquote>
Wenn ein Benutzer einen leeren Zeichenfolge oder nur "T" ohne Zahlen eingibt. Als Anfänger verstehe ich nicht vollständig, was dies verursacht oder wie es behoben werden soll.public class Teacher
{
public int TeacherId { get; set; }

[Required(ErrorMessage = "Teacher Employee Number is required")]
public string TeacherEmployeeNumber { get; set; }

[Required(ErrorMessage = "Teacher First Name is required")]
public string TeacherFName { get; set; }

// other properties...
}
Ich habe versucht zu validieren, dass die Mitarbeiternummer eines Lehrers mit "T" beginnt, gefolgt von Ziffern mit Regex und der StartsWith -Methode. Ich erwartete, dass dieser Code das Format ordnungsgemäß validieren und geeignete Fehlermeldungen anweisen würde, wenn das Format falsch ist. />
System.ArgumentOutoFrangeException
< /blockquote>
Wenn versucht, die Substring (1) < /code> auf Zeichenfolgen auszuführen, die leer oder nur ein Zeichen lang sind. Ich denke, das Problem ist, dass ich versuche, das Substring zu überprüfen, bevor ich überprüfe, ob die Zeichenfolge über genügend Zeichen enthält. Als Anfänger fällt es mir schwer, die richtige Reihenfolge der Validierungsschritte zu verstehen und wie ich mit diesen Kantenfällen umgehen kann. Ich habe mir Regex -Tutorials angesehen, aber ich finde sie als Anfänger ziemlich verwirrend.
Jede Hilfe oder Erklärung wäre sehr geschätzt!

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post