- 3,715,827 Users
- 2,242,889 Discussions
- 7,845,623 Comments
Forum Stats
Discussions
Categories
- 17 Data
- 362.2K Big Data Appliance
- 7 Data Science
- 1.6K Databases
- 472 General Database Discussions
- 3.7K Java and JavaScript in the Database
- 22 Multilingual Engine
- 487 MySQL Community Space
- 5 NoSQL Database
- 7.6K Oracle Database Express Edition (XE)
- 2.8K ORDS, SODA & JSON in the Database
- 417 SQLcl
- 42 SQL Developer Data Modeler
- 184.9K SQL & PL/SQL
- 21K SQL Developer
- 1.9K Development
- 3 Developer Projects
- 32 Programming Languages
- 135.1K Development Tools
- 9 DevOps
- 3K QA/Testing
- 253 Java
- 6 Java Learning Subscription
- 10 Database Connectivity
- 66 Java Community Process
- 1 Java 25
- 9 Java APIs
- 141.1K Java Development Tools
- 6 Java EE (Java Enterprise Edition)
- 153K Java Essentials
- 135 Java 8 Questions
- 86.2K Java Programming
- 270 Java Lambda MOOC
- 65.1K New To Java
- 1.7K Training / Learning / Certification
- 13.8K Java HotSpot Virtual Machine
- 10 Java SE
- 13.8K Java Security
- 3 Java User Groups
- 22 JavaScript - Nashorn
- 18 Programs
- 125 LiveLabs
- 30 Workshops
- 9 Software
- 3 Berkeley DB Family
- 3.5K JHeadstart
- 5.7K Other Languages
- 2.3K Chinese
- 3 Deutsche Oracle Community
- 11 Español
- 1.9K Japanese
- 2 Portuguese
2cnd call to DataDapapter.fill with RefCursor leads to InvalidOperationException

Markus Schneider
Member Posts: 609 Blue Ribbon
in ODP.NET
Hi there,
try to build paging with the DataGrid, a DataSet and a RefCursor, but the 2cnd call to DataDapapter.fill with RefCursor leads to InvalidOperationException:
"Operation is not valid due to the current state of the object."
int numRecs = dataAdapter.Fill(dataSet, startRecord, pageSize, "MyTable", refCursor);
Idea would be to retreive only the number of displayed rows of the resultset from the database and only get the next rows if the users scrolls the datagrid.
Thanks, Markus
try to build paging with the DataGrid, a DataSet and a RefCursor, but the 2cnd call to DataDapapter.fill with RefCursor leads to InvalidOperationException:
"Operation is not valid due to the current state of the object."
int numRecs = dataAdapter.Fill(dataSet, startRecord, pageSize, "MyTable", refCursor);
Idea would be to retreive only the number of displayed rows of the resultset from the database and only get the next rows if the users scrolls the datagrid.
Thanks, Markus
Comments
-
Markus,
The current version of ODP.NET has a limitation of only allowing a single Fill() on an OraRefCursor. This limitation will be eliminated in the next release of ODP.NET.
thanks,
- nari -
Nari,
thanks for your answer. Does "next release" means the production release of the current beta? What is the timeframe (3, 6, 12 Months?) i can expect a version supporting this?
The feature would be really useful because of response times and performance of the userinterface.
Is there any other solution to implement paging (without modifying the WHERE-Statement)? -
Markus,
We are planning on releasing another beta release in 2 - 3 months. (Unfortunately, that's as specific as I can get.) I'll see to it that the muliple Fill() on an OraRefCursor issue is resolved with that release.
thanks,
- nari -
Does Multiple calls to Fill() on a refcursor require the same connection where the refcursor was originally opened, OR it would work with Oracle server-side connection pooling, which doesn't require same physical session as long as the logical session is open?
Thanks
Bob -
Bob,
To successfully manipulate an OraRefCursor object (and the OraLOB objects), the connection that it was orignally associated with at its creation time must be alive. Once the associated connection is closed or disposed, they are no longer usable.
thanks,
- nari
This discussion has been closed.