ExecuteXmlReader und null Resultset Wirft TargetInvocationException
-
03-07-2019 - |
Frage
Ich bin eine gespeicherte Prozedur auf einem SQL Server 2005-Datenbank aufrufen, die eine XML-Resultset zurückgibt. Manchmal wird es eine Null-resultset zurückkehren becuase es keine Zeilen sind zurückzukehren. Wenn diese athe ExecuteXmlReader Methode geschieht wirft einen TargetInvocationException. Dies scheint ein bekanntes Problem zu sein (siehe: http://social.msdn.microsoft.com/Forums/en-US/adodotnetdataproviders/thread/5e90e3c0-605b-406d-848a-dea7b16f458e/ ).
Was ist der beste Weg, um diese Ausnahme zu behandeln?
Lösung
Ich kann 3 Möglichkeiten denken
- Ändern gespeicherte Prozedur ein Dummy / leeren Wert zurück
- Ändern Code - fangen Ausnahme und nichts tun - oder log Fehler
- Mit DataSet -. Sie sollten einen leeren Datensatz erhalten so einfach überprüfen, ob Datensatz leer ist oder nicht
Als im Zusammenhang SO für die 3. Wahl zu veröffentlichen, ist hier eine Frage SO, wie Sie überprüfen, ob Datensatz leer ist oder nicht
In C #, was ist die beste Art und Weise zu testen, ob ein Datensatz leer ist?