Thanks indeed it seems there is no simple way because ADO.NET didn't even include the features of the "old" ADO (I wonder what "progress" is finally :) ):
http://www.udaparts.com/devguide.htm
ADO.NET is designed to focus the
needs of web applications with a
completely disconnected model, which
requires all of tables data are loaded
into an "in-memory" database (a
DataSet) before accessing these data.
This model works well for web
applications, but it does have a
number of short comings that make it
awkward to use for traditional desktop
applications and middle tier
components in many cases. In
comparison to classical COM ADO/OLEDB
technology, ADO.NET has following main
short comings listed below:
a). It is very slow to access a large
data table. ADO.NET can manage a small
number of data records in disconnected
model efficiently. However, it works
very slow if the number of data
records becomes large because ADO.NET
requires loading these records into a
DataSet object first and setting
relationships among tables. The
loading time becomes larger and larger
when the number of records becomes
larger and larger. It is this reason
that leads to a large memory footprint
in many cases.
b). ADO.NET supports sequential
forward and read-only server cursor
only. It works fine with web
applications, but it becomes very
awkward with developments for
classical desktop and middle tier
applications because these
applications typically require data
accessing mode is able to provide
scrollable and updateable server
cursors with bookmarks at least.
Currently, ADO.NET is not able to
provide these features. ADO.NET lacks
many fundamental features that the
previous COM ADO/OLEDB model provides.
This is a huge problem especially for
desktop application development.
Their component (http://www.udaparts.com/oledbpronet.htm) seems great except it's not free, hasn't someone developped something similar in Opensource ?