如何遍历OracleDbType.RefCursor结果集

时间:2011-06-16 14:17:52

标签: .net oracle c#-4.0 ref-cursor

我目前在我的MVC 2网站实现中有点困难,该网站从Oracle数据库获取数据...现在我想迭代一个RefCursor out参数并将所有结果序列化并将其序列化为一个自定义的xml字符串......

我是否错过了有关RefCursor的内容?因为在做了一些reses之后,似乎没有办法循环抛出所有返回的Rows和Columns。我知道你可以从RefCursor获得一个DataReader ......但是DataReader似乎有些令人困惑。我只想浏览返回数据集的所有行和列...我希望存储的proc设计器刚刚返回结果集而不是将它放入一个怪异的Ref Cursor中。我相信她有她的理由。

这个问题似乎确实是一个小小的丛林联盟,我将继续研究这个问题的最佳方法。感谢您提供的任何信息......此外,我愿意以完全不同的方式做到这一点。我并不特别坚持任何一种循环引用游标的方法。

P.S看起来我在我的代码中使用了折旧方式。有关如何使用ODP.Net做到这一点的想法吗?

1 个答案:

答案 0 :(得分:2)

我认为这个链接:http://www.akadia.com/services/ora_return_result_set.html给出了你想要的答案。您使用dataadapter使用函数的refcursor结果“填充”数据表。然后你可以迭代数据表。

虽然仔细观察,但我没有看到作者如何在'out'refcursor参数和表映射'emp'之间建立关联。