Warum kann ich nicht catch SqlException auf SaveChanges () - Methode des Entity Framework
Legte ich SaveChanges()
Methode in einem try/catch-block, aber ich konnte nicht fangen SqlExeption.
try
{
db.SaveChanges();
}
catch (Exception ex)
{
}
- Das gewünschte Verhalten erklärt und offensichtlich. Es gibt eine klare Aufgabenstellung. Neugierig, warum dieses gewählt wurde...nach unten ...
- Ich nenne BS auf das schließen dieses Thema. es ist NATÜRLICH on-topic und hat sogar Beispiel-code zeigen, was das erwartete Verhalten ist. "Ich wünschte, wir Stimmen könnten sich diejenigen, die abgestimmt haben, um es zu schließen.
- sollte Sie wieder öffnen, und weisen Sie akzeptierten Antworten @usr
Du musst angemeldet sein, um einen Kommentar abzugeben.
SqlException
ist System.Daten.SqlClient.SqlException-Klasse, so ist es normal, dass Sie nicht fangen diese AusnahmeDas EntityFramework
DbContext.SaveChanges-Methode()
werfen kann folgende Ausnahmen nur durch MSDNSo können Sie etwas tun, wie dies zum Beispiel
Mehr
Die Ausnahmen sind die oben genannten entity Framework Angepasst Ausnahmen, die nur
EF
verantwortlich ist, Wann und Wie lösen Sie Sie werfen Sie einen Blick aufImplementieren von benutzerdefinierten Ausnahmen
Können Sie nicht fangen
SqlException
weil es nicht geworfen, Volltreffer, es ist, legen Sie als Innere Ausnahme derDbUpdateException
.Entity Framework ist eine Abstraktion zur Arbeit mit den Datenbanken, es hängt nicht von jeder Datenbank-Technologie direkt.
Haben Sie einen Blick auf die Ausnahmen, die durch
DbContext.SaveChanges()