X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=web%2Fado-net;h=cd6ea65cfe42786a88044795167c06f4ab24123f;hb=eb16387133698b5311dcc0c8ef6747d3833ea5ba;hp=27e8fd09f03b09aaa87a05ee3e1721d41c105a9f;hpb=c80e9ca5df00506f454711247c91ce1252d3e118;p=mono.git diff --git a/web/ado-net b/web/ado-net index 27e8fd09f03..cd6ea65cfe4 100644 --- a/web/ado-net +++ b/web/ado-net @@ -1,81 +1,235 @@ * ADO.NET - The coordinator for the ADO.NET implementation is - Rodrigo Moya, - with the collaboration of: - Daniel Morgan, - Tim Coleman, - Brian Ritchie, and - Vladimir Vukicevic. +
Mono's ADO.NET Developers: + +
Developer | +Contribution | +|
Rodrigo Moya | +rodrigo -AT- ximian.comNOSPAM |
+ ADO.NET coordinator, OLE DB provider, and tests |
+
Daniel Morgan | +danmorg -AT- sc.rr.comNOSPAM |
+ MySQL, PostgreSQL, Oracle providers, and tests |
+
Tim Coleman | +tim -AT- timcoleman.comNOSPAM |
+ Microsoft SQL Server, Sybase, TDS providers, Oracle, + and tests. + He has + contributed to other parts of Mono too, such as, + EnterpriseServices, + XML, and WebServices. |
+
Brian Ritchie | +brianlritchie -AT- hotmail.comNOSPAM |
+ ODBC provider and the ProviderFactory in Mono.Data |
+
Vladimir Vukicevic | +vladimir -AT- pobox.comNOSPAM |
+ SQL Lite provider. He has contributed to GTK# and mPhoto too. |
+
Christopher Bockner | +cleared -AT- rogers.comNOSPAM |
+ IBM DB2 Universal Database provider |
+
Ville Palo | +vi64pa -AT- koti.soon.fiNOSPAM |
+ XML stuff in System.Data including DataSet + and XmlDataDocument, and tests |
+
Gonzalo Paniagua Javier | +gonzalo -AT- ximian.comNOSPAM |
+ Integration between System.Web and System.Data |
+
Gaurav Vaish | +gvaish -AT- iitk.ac.inNOSPAM |
+ Web controls | +
Phillip Jerkins | +Phillip.Jerkins -AT- morgankeegan.comNOSPAM |
+ Named Instance support in System.Data.SqlClient |
+
List of ADO.NET Data Providers working in Mono: + +
Providers which we do not have, but we would like to have. Currently, + some of these databases are supported via the ODBC or OLE DB providers. -
The current plan to implement ADO.NET is as follows: +
External Projects that have created ADO.NET Providers that work on Mono: + +
Some tools that can be used for ADO.NET and other technologies (ASP.NET, XML, etc). + +
SQL# GUI - a graphical SQL query tool allows a user + to enter SQL commands in a top panel which is a text editor. It + has a toolbar and menu for various tasks, such as, executing + SQL commands one-at-a-time or in a batch. The results would appear + in a bottom panel in a grid or could be saved to a file (xml, html, csv). + Also, the bottom panel would allow logging of SQL command executed. + Currently, there is a SQL# For GTK# which + provides a GUI interface using the Gtk# toolkit. SQL# For GTK# + is a work-in-progress and can be found in the mcs source at + mcs/tools/SqlSharp/gui/gtk-sharp
Tools we would like to have, but they have not been created yet: + +
SQL# GUI - a GUI tool written in C# to - execute SQL commands. - Currently, there is SQL# For GTK# which - can be found at - mcs/tools/SqlSharp/gui/gtk-sharp - It has a SQL editor with - syntax hi lighting of SQL keywords
An ADO.NET Provider Factory + was created by Brian Ritchie. The + Provider Factory is a way to dynamically create + connections, commands, parameters, and data adapters based on configuration + information. -* Current Status +** Current Status -
Variouls ADO.NET Providers have been created: PostgreSQL, MySQL, Sybase, SQL Lite, - Microsoft SQL Server, OLE DB, ODBC, and TDS Generic. See their respective web page for - more information. +
Various ADO.NET Providers have been created at various stages of + development including: + Firebird/Interbase, IBM DB2 Universal Database, MySQL, ODBC, OLE DB, Oracle, + PostgreSQL, SQL Lite, Sybase, Microsoft SQL Server, and TDS Generic. + See their respective web page for more information. + +
Data Relations via DataRelation, DataRelationCollection, and + other classes have not been implemented + +
Constraints need lots of work + +
XML Schema Definition tool xsd.exe that is included + in the .NET Framework has not been created for Mono + +
TypeDataSetGenerator needs to be stubbed and implemented.
DataSet, DataAdaptor, DataTable, DataRelation, DataRow, DataColumn, DataColumnCollection, DataRowCollection, and others need more work. There are - many classes that are just stubs and need to be implemented. + many classes that are just stubs and need to be implemented. Ville Palo has been + doing much testing here.
XML support in System.Data needs work. This involves working on the classes: DataSet, XmlDataDocument, and the method ExecuteXmlReader() that exists in a provider's class that implements IDbCommand, and others. Stuart Caborn has started the XML support in a DataSet. Tim Coleman started - XML support in the ExecuteXmlReader() in a SqlCommand. - -
ADO.NET Provider Factory has been started by Brian Ritchie. The - Provider Factory is used to dynamically create - connections, commands, parameters, and data adapters based on configuration information. This - provider factory can also provide utility functions needed by a lot of - providers but are not exposed via the provider. + XML support in the ExecuteXmlReader() in a SqlCommand. Ville Palo has been + heavily modifying DataSet, XmlDataDocument, and other classes for reading + and writing XML. XML Serialization support in DataSet needs to be implemented. -
Integration with ASP.NET has not been started, such as, data binding - to a System.Web.UI.WebControls.DataGrid. This may involve implementing many classes - in System.Web and System.Data. Gonzalo, Gaurav, Leen, Patrik, Duncan, and others are - working very hard on the ASP.NET support. If you want to help, - contact Gonzalo Paniagua Javier +
Integration with ASP.NET has been created. Data binding of + a DataTable in a DataSet to a System.Web.UI.WebControls.DataGrid works. Data binding + of other types works too. + +
Database Access from ASP.NET: +
Integration with Windows.Forms has not been started, such as, data binding to a System.Windows.Forms.DataGrid. This may involve implementing many classes @@ -124,33 +327,12 @@ has not been started, such as, data binding to a GtkTreeView. This may involve creating new classes to go between the glist data model and the ADO.NET data model. - Mike Kestner would be the best person to ask for help on GTK#. + Mike Kestner or Rachel Hestilov would be the best people to ask for help on GTK#.
Integration with QT# has not been started. Any information on how this can be done is appreciated. Adam Treat would be the best person to ask about QT#. -
Integration with GDA# has not been started. It is - included in the GTK# project, GDA# - does not require GTK+ nor GNOME. GDA# is C# bindings - to GDA which - is an ADO/OLE-DB like layer for Linux provided as a C library. Classes - that would bind data between the ADO.NET data model and the GDA data model will - need to be created. Rodrigo Moya is the best person to contact about this. - -
Integration with GnomeDb# has not been started. It is - included in the GTK# project and uses GDA# for its data access model. - Creating classes to bind data between the data model in ADO.NET - and the data model that exists in GDA# and GnomeDb# will - need to be started. GnomeDb# is C# bindings to - GnomeDb which uses - GDA as its data access layer. GnomeDb - is a C API in a library that contains - gtk+ widgets (GUI controls) for data access. There are some nifty widgets - (GUI controls) that can be used, such as, GnomeDbGrid, GnomeDbBrowswer, - GnomeDbSqlEditor, GnomeDbList, GnomeDbLogin, GnomeDbReportEditor, GnomeDbTableEditor, - GnomeDbCombo, and GnomeDbForm. Rodrigo Moya is the best person to contact. -
Building System.Data
The System.Data.dll gets built with the rest of the class library. @@ -194,3 +376,71 @@ +** Testing + +
Name | +Assembly / Namespace | +Test | +
Microsoft SQL Server | +System.Data / System.Data.SqlClient | +SqlTest.cs at System.Data/Test | +
PostgreSQL (Mono) | +Mono.Data.PostgreSqlClient / Mono.Data.PostgreSqlClient | +PostgresTest.cs at System.Data/Test | +
MySQL (Mono) | +Mono.Data.MySql / Mono.Data.MySql | +MySqlTest.cs at Mono.Data.MySql/Test | +
Oracle (Mono) | +System.Data.OracleClient / System.Data.OracleClient | +TestOracleClient.cs at System.Data.OracleClient | +
ODBC (Mono) | +System.Data.OracleClient / System.Data.OracleClient | +TestOracleClient.cs at System.Data.OracleClient | +