Ich habe einen neuen Laptop bei der Arbeit und ein Code, der früher in der Woche funktionierte, funktioniert heute nicht mehr.
Der Code, der vorher funktionierte, wird vereinfacht:
while (dr.Read())
{
int i = int.Parse(dr.GetString(1))
}
Jetzt schlägt es fehl, wenn der Datenbankwert 0 ist. Manchmal, aber nicht zuverlässig, funktioniert dies stattdessen:
while (dr.Read())
{
int i = Convert.ToInt32(dr["FieldName"]))
}
Habe ich etwas Dummes verpasst?
Seltsamerweise ist ReSharper auch mit Tonnen von seltsamen Fehler mit der gleichen Fehlermeldung, die ich mit dem obigen Code erhalten: "input string was not in the correct format." (Fängt an, bevor ich überhaupt ein Projekt lade.)
Irgendwelche Ideen? Hat jemand Probleme mit SP? Ich habe versucht, sicherzustellen, dass alle meine SPs auf dem neuesten Stand waren, als ich den Rechner bekam.
EDIT: Ich weiß, wie man Try.Parse und Fehlerbehandlung verwendet. Der Code hier ist vereinfacht. Ich lese Testfälle aus einer Datenbanktabelle. Diese Spalte hat nur 0, 1, und 2 Werte. Das habe ich bestätigt. Ich habe das Datenbankfeld in eine String-Variable s gesetzt und dann int.Parse(s) ausprobiert. Der Code funktionierte Anfang dieser Woche und die Datenbank hat sich nicht geändert. Das einzige, was sich geändert hat, ist meine Umgebung.
Um das Problem vollständig zu vereinfachen, löst diese Codezeile eine Ausnahme aus ("input string was not in the correct format"):
int.Parse("0");
EDIT: Vielen Dank an alle, die mir geholfen haben, dieses Problem zu lösen! Die Lösung war ein Zurücksetzen meiner Spracheinstellungen.