ExecuteXmlReader et null Resultset lève TargetInvocationException
-
03-07-2019 - |
Question
J'appelle une procédure stockée sur une base de données SQL Server 2005 qui renvoie un ensemble de résultats XML. Parfois, il retournera un résultat nul car il n'y a pas de lignes à renvoyer. Lorsque cela se produit, la méthode ExecuteXmlReader lève une exception TargetInvocationException. Cela semble être un problème connu (voir: http://social.msdn.microsoft.com/Forums/en-US/adodotnetdataproviders/thread/5e90e3c0-605b-406d-848a-dea7b16f458e/ ).
.
Quel est le meilleur moyen de gérer cette exception?
La solution
Je peux penser à 3 choix
- Modifiez la procédure stockée pour renvoyer une valeur factice / vide
- Modifier le code - intercepter une exception et ne rien faire - ou consigner une erreur
- Utiliser DataSet : vous devez obtenir un DataSet vide. Vérifiez si DataSet est vide ou non.
En tant que poste SO associé pour le troisième choix, voici une question à propos de la façon de vérifier si DataSet est vide ou non
Dans C #, quel est le meilleur moyen de vérifier si un jeu de données est vide?