System.Data TODO List ===================== Update this file as needed... * To get ExecuteReader() in a SqlCommand object to return a SqlDataReader object which can Read() data and get a String or Int32 from the database. Other types can be done later. A class (SqlDataReader) that implements IDataReader/IDataRecord only has one row in memory at a time. In order to do this, we need to compile and edit these classes: SqlDataReader DataTable DataRowCollection DataRow DataColumnCollection DataColumn DataConstraintCollection DataConstraint DataRelationCollection DataRelation DataTableCollection and dependencies... System.Data.Common classes that need to be implemented: - implement DataAdapter.cs - implement DataColumnMapping.cs - implement DataColumnMappingCollection.cs - implement DataTableMapping.cs - implement DataTableMappingCollection.cs - implement DbDataAdapter.cs - implement DbDataPermission.cs - implement DbDataPermissionAttribute.cs - implement RowUpdatedEventArgs.cs - implement RowUpdatingEventArgs.cs The following classes implement InternalDataCollectionBase: * DataRowCollection * DataColumnCollection * DataTableCollection * DataRelationCollection - an abstract class used by DataTable and DataSet * ConstraintCollection DataTableRelationCollection is an internal class that implements DataRelationCollection and is used by DataTable for parent/child relations. Don't know if it will/will not be used by DataSet. Other classes, structs, etc. that are missing: DataRowView DataSysDescriptionAttribute DataViewManager DataViewSetting DataViewSettingCollection FillErrorEventArgs MergeFailedEventArgs TypedDataSetGenerator Exceptions that still need to be stubbed: (need to see what exceptions need to be done) ConstraintException DataException DBConcurrencyException InvalidConstraintException InvalidExpressionException MissingPrimaryKeyException NonNullAllowedException ReadOnlyException RowNotInTableException SqlNullValueException SqlTruncateException SqlTypeException StrongTypingException SyntaxErrorException TypedDataSetGeneratorException VersionNotFoundException The additional System.Data.SqlTypes classes need to be stubbed: SqlByte SqlDataTime SqlDecimal SqlDouble SqlGuid SqlInt16 SqlInt64 SqlMoney SqlSingle * provide a standard scheme for storing connection string data * allow Execute methods in SqlCommand to call a stored procedure * Create a script for testing System.Data: - calls script to create a test database named monotestdb - set up nunit for testing System.Data - set up System.Data.Config or some other file to hold connection strings and other configuration settings for the testing System.Data - any other stuff needed... * get SqlParameter/SqlParameterCollection working so you can: - for queries/commands that have parameters: o input o output o return o input/output - call a stored procedure with parameters * be able to return a XmlReader from using method ExecuteXmlReader of a SqlCommand object * get SqlDataAdapter/DataSet working * Create Library for PInvoking into libgda This will be used by System.Data.OleDb classes * Begin System.Data.OleDb classes: - OleDbConnection - OleDbCommand - OleDbTransaction * Do more of the OleDb classes to retrieve a OleDbDataReader object from a query (SELECT FROM): - OleDbDataReader - others... * Do more OleDb classes for DataSet: - OleDbDataAdapter - others... * Security Audit of System.Data * Create a MySQL ADO.NET Provider * Create an Oracle ADO.NET Provider * Create an Interbase ADO.NET Provider * Create a Sybase ADO.NET Provider (TDS?) * Create an IBM UDB DB2 ADO.NET Provider * Create other ADO.NET providers... Integration =========== * get System.Data to work with ASP.NET's System.Web.UI.WebControls.DataGrid * get System.Data to work with GUI System.Windows.Forms.DataGrid