[Mono-list] System.Data

Piers Haken piersh@friskit.com
Wed, 23 Jan 2002 20:03:34 -0800


I think you're right - just writing a wrapper for GnomeDB won't
necessarily be the easiest way to provide compatibility with .NET,
although it might be the easiest way to provide non-ADO.NET-compatible
data access functionality. I believe that the mono functionality should
lie below the DbDataAdapter level.
 
As I see it there are several options:
1) on Win32 you could create an OleDbDataAdapter (and other related
OLEDB classes) that actually calls native OLEDB objects, and/or a
SqlDataAdapter that either uses ADO or OLEDB natively to talk to a SQL
Server. This would just be a direct port of the MS stuff and obvisouly
wouldn't run on other platforms.
 
2) you could provide OleDb/SqlDataAdapters that wrap GnomeDB
functionality. This would be the best choice since it would provide
compatibility with existing code, but it may not be possible given the
differences between GnomeDB and OLEDB.
 
3) You could forget OleDb/SqlDataAdapter and just provide a
GnomeDbDataAdapter.
 
4) You could create individual 'direct' DbDataAdapters for individual
DBMSs (MySqlDataAdapter/PostgreSqlDataAdapter/etc...). The sources for
the jdbc drivers for these systems might be a good place to start.
 
I think the best course of action is to tackle the problem from two
fronts: 1) port the ADO.NET framework namespaces while still using the
Microsoft DbDataAdapters as a basis to ensure compatibility, and 2)
create a set of linux DbDataAdapters that will run under Microsoft's
ADO.NET framework (this assumes you use some cross-platform mechanism -
like sockets - to talk to the DBs).
 
Does anyone know if the licensing terms for .NET allow porting of
ADO.NET?
 
Piers.
 
 -----Original Message-----
From: Chris Podurgiel [mailto:podurgie@swbell.net] 
Sent: Wednesday, January 23, 2002 5:50 PM
To: mono-list@ximian.com
Subject: [Mono-list] System.Data



Everyone,
I've spoken with Miguel about how the System.Data namespace should be
implemented, and he sugested I post my thoughts on the mono-list.
According to the Mono site It was believed that we could just write a
wrapper to GnomeDB.  After looking at the Namespace, I noticed that
there has been a major overhaul to ADO, with new concepts like the
DataSet, DataReaders, and the ability to synchronize a DataSet with an
XmlDataDocument. I belive a wrapper to GnomeDB would have been great if
ADO.NET wasn't an architectural overhaul from the previous versions of
ADO.
 
This brings up another topic of conversation.  .NET currently has two
data providers: a SQL Server Data Provider, and an OLE DB Data Provider.
I'm not very fimilar with Databases and Data access on the Linux/Unix
platform.  Would there need to be another Data Provider for the Linux
platform?
 
 
All your thoughts and constructive input is welcome,
Chris Podurgiel