ExecuteXmlReader和null Resultset引发TargetInvocationException

时间:2009-03-02 15:49:41

标签: xml sql-server-2005 exception null resultset

我在SQL Server 2005数据库上调用存储过程,该数据库返回XML结果集。有时它会返回null结果集,因为没有要返回的行。当发生这种情况时,ExecuteXmlReader方法抛出TargetInvocationException。这似乎是一个已知问题(参见:http://social.msdn.microsoft.com/Forums/en-US/adodotnetdataproviders/thread/5e90e3c0-605b-406d-848a-dea7b16f458e/) 处理此异常的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

我可以想到3个选择

  1. 修改存储过程以返回虚拟/空值
  2. 修改代码 - 捕获异常并且不执行任何操作 - 或记录错误
  3. 使用 DataSet - 您应该获得一个空的DataSet,以便检查DataSet是否为空。
  4. 作为第三选择的相关SO帖子,这里是关于如何检查DataSet是否为空的SO问题

    In C#, what is the best way to test if a dataset is empty?