1 2004-03-30 Lluis Sanchez Gual <lluis@ximian.com>
3 * DataColumn.cs: In Expression setter, set the expression member even if
5 * DataSet.cs: Support serialization of byte[] columns.
6 * XmlDataLoader.cs: Support deserialization of Guid columns.
7 Set MappingType.Attribute to columns infered from attributes.
9 2004-03-29 Juraj Skripsky <juraj@hotfeet.ch>
11 * ExpressionElements.cs : remove
12 * DataColumn.cs, DataRelationCollection.cs, DataTable.cs :
13 Integration of new Mono.Data.SqlExpressions classes used in
14 DataTable.{Select, Compute}.
15 Fixes bug #55503 and lots of failures in DataTableTest.cs.
17 2004-03-28 Juraj Skripsky <juraj@hotfeet.ch>
19 * Index.cs: Simple fix in ComparePartialRowNonUnique.
20 This fixes bugs #56129 and #56014.
22 2004-03-25 Lluis Sanchez Gual <lluis@ximian.com>
24 * DataSet.cs: In WriteXml (string filename, XmlWriteMode mode), close the
25 stream after writing the dataset. This fixes bug #52581.
26 Also added several writer.Close into finally blocks, so writers are properly
27 closed in case of an exception.
29 2004-03-12 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
31 * Constraint.cs: DO NOT USE the consts scheme if types can be referenced directly!
32 * DataColumn.cs: DO NOT USE the consts scheme if types can be referenced directly!
33 * ColumnTypeConverter.cs: Added stub
34 * DefaultValueTypeConverter: Added stub
35 * ConstraintConverter.cs: Added stub
37 2004-03-04 Eran Domb <erand@mainsoft.com>
39 * XmlDataLoader.cs : Xml reading reviewed. Added support for additional xml formats as described
40 in MS.NET documentation (missing DataSet element etc).
42 2004-03-04 Eran Domb <erand@mainsoft.com>
45 * Index.cs : Rollback last changes.
47 2004-03-03 Atsushi Enomoto <atsushi@ximian.com>
49 * Index.cs : justa build fix.
51 2004-03-03 Eran Domb <erand@mainsoft.com>
54 * Constraint.cs, ForeignKeyConstraint.cs, UniqueConstraint, ConstraintCollection.cs, DataColumn.cs,
55 DataRow.cs, DataRowCollection.cs, DataSet.cs, DataTable.cs : Changes made for using indexes on tables.
56 This changes made for performance improvement.
58 2004-02-08 Eran Domb <erand@mainsoft.com>
60 * XmlSchemaMapper.cs : Read columns is they were written as SimpleContent or as Attributes.
62 2004-02-08 Eran Domb <erand@mainsoft.com>
64 * DataSet.cs: Fix some bugs in ReadXml().
66 2004-02-04 Lluis Sanchez Gual <lluis@ximian.com>
68 * DataSet.cs: Added missing method that broke the build.
70 2004-02-04 Eran Domb <erand@mainsoft.com>
72 * DataRowCollection.cs (InsertAt): Add a check for null row. Replace check of IndexOf with RowId for
74 * DataSet.cs (GetTableSchema) : Add supprot for simple content columns. Change the condition for a case
75 when all column are attributes (elements count is 0), we still want to add the relations. No relations
76 can be on simple contents.
77 (AddUniqueConstraints) Check that the column of the constraint are not hidden.
78 (AddForeignKeys) Check that the relation has constraints attach to it.
79 * XmlConstants.cs : Added constant.
81 2004-02-04 Eran Domb <erand@mainsoft.com>
83 * DataSet.cs : GetSchemaSerializable() return null and not BuildSchema().
84 DoWriteXmlSchema calls BuildSchema ().
86 2004-02-04 Lluis Sanchez Gual <lluis@ximian.com>
88 * DataRow.cs: Added SetOriginalValue(), which is used to set the original
90 * DataRowCollection.cs: In InsertAt(), perform the correct checks and
92 * DataSet.cs: Fixed method GetChanges(): Parent rows of modified rows must
93 also be added to the dataset.
94 In WriteTable(), do not write unchanged rows when writing the original
96 Added WriteIndividualTableContent(), for writing the contents of a single
98 Changed BuildSchema and related methods, so it can generate a schema for
99 any set of tables, not just the tables of the dataset (needed for
100 single datatable serialization).
101 * DataTable.cs: Implemented serialization constructor and GetObjectData method.
102 Also implemented some ReadXmlSchema methods.
103 * XmlDiffLoader.cs: Read and process the xml document directly from XmlReader,
104 instead of loading the full dataset in an XmlDocument. It is faster and
105 saves memory. Also fixed several problems when generating the changes.
106 * XmlSchemaMapper.cs: Support reading schemas for single tables (used by
107 table serialization).
109 2004-02-02 Eran Domb <erand@mainsoft.com>
111 * DataSet.cs : Add indentation to the xml serialization only if we create the XmlWriter.
112 Add the namespace attribute even if namespace is an empty string for inteoperability with MS.NET.
113 * DataTable.cs (NewRow): Create only one DataRowBuilder.
114 Initiate new row with row id -1.
115 * DataRow.cs : Add RowId property.
116 * DataRowBuilder.cs : Add _rowId member.
117 * DataRowCollection.cs (Add) : Use the RowId property of the new row to check if it is already exists in the collection.
119 2004-01-26 Eran Domb <erand@mainsoft.com>
121 * XmlConstants.cs : Added some constants.
122 * DataColumn.cs : Added a method to retrive AutoIncrement value.
123 * XmlDataLoader.cs : Set the value of the foriegn key column, according to the value of the
125 * XmlDiffLoader.cs : Convert the value comming from the xml.
126 * XmlSchemaMapper.cs (Read) : Set the DataSet namespace.
127 (ReadXmlSchemaSequence) : Change the logic that decides if this element is a column or a table.
128 (ReadXmlSchemaElement) : Set the locale of the dataset.
129 (ReadColumn) : Set the column type. Find if the column is AutoIncrement.
130 (GetColumnType) : New method to get the column type from the attribute value.
131 (ReadXmlSchemaUnique) : Improve parsing of XPath. Set the constraint as a PK if needed,
132 and add the constraint to the table.
133 (ReadXmlSchemaKeyref) : Improve parsing of XPath. Create the FK constraint and add it to
135 * DataSet.cs : Improving writing of unique constraints, and foriegn key constraint. Givving them the correct names.
136 Writing more information to the schema for interoperability with ms.net.
137 Improve diffgarm writing mode.
140 2004-01-21 Atsushi Enomoto <atsushi@ximian.com>
142 * TypedDataSetGenerator.cs : Implemented GenerateIdName().
144 2004-01-21 Eran Domb <erand@mainsoft.com>
146 * XmlDataLoader.cs (AddRowToTable) : Give thre new relation correct name.
147 Do not set the child column to be AutoIncrement.
148 Create the new column for the relation as MappingType.Hidden so they will not be serialized
149 when writing the dataset to xml.
151 2004-01-20 Atsushi Enomoto <atsushi@ximian.com>
153 * Added missing TypedDataSetGenerator.cs.
155 2004-01-08 Eran Domb <erand@mainsoft.com>
157 * XmlSchemaMapper.cs : Fix a bug. Check if table already in DataSet before adding it.
158 * DataSet.cs (ReadXml) : Fix bugs. Read correctly the xml file with XmlReadMode of DiffGram,
159 InferSchema, ReadSchema and IgnoreSchema.
160 * XmlDataLoader.cs : All modes use the same logic.
161 * XmlDiffLoader.cs : Adding BuildXmlDocument method to the class.
163 2004-01-06 Eran Domb <erand@mainsoft.com>
165 * DataRelationCollection.cs : Use IndexOf in indexer.
166 * DataSet.cs : Adding support for WriteXml with diffgram. Code style changes.
167 * XmlDataLoader.cs : Set the DataSet.enforceConstraints to false before loading the tables.
168 * XmlDiffLoader.cs : Reading nested tables.
169 * XmlSchemaMapper.cs : Reading the relation.
170 * XmlConstants.cs : Adding some constants.
172 2004-01-05 Jackson Harper <jackson@ximian.com>
174 * DataView.cs: Set readonly property of property descriptor. This
177 2004-01-01 Sanjay Gupta <gsanjay@novell.com>
179 * DataRelationCollection.cs : Fixed incorrect generation of default
181 * DataSet.cs : Added missing functionality in WriteXml().
182 * XmlConstants.cs : Added new constants.
184 2003-12-27 Atsushi Enomoto <atsushi@ximian.com>
186 * DataSet.cs : Fixed incorrect WriteXml() signature.
188 2003-12-18 Jackson Harper <jackson@ximian.com>
190 * DataView.cs: Implement AddNew, Delete, and OnListChanged.
192 2003-12-17 Atsushi Enomoto <atsushi@ximian.com>
194 * DataSet.cs, XmlDataLoader.cs : Table name should be encoded before
195 they take shape of xml. This fixed bug #52240
197 2003-12-16 Tim Coleman <tim@timcoleman.com>
198 * KeyRestrictionBehavior.cs:
199 New stubs added for .NET 1.2
203 2003-12-08 Eran Domb <erand@mainsoft.com>
204 * DataColumn.cs (Expression) : Validate the expression.
206 * DataRelationCollection.cs (IndexOf) : Added new method sensetive to case differences in relation name.
207 (Contains, IndexOf, this[], Add) : Call new IndexOf when needed.
209 * DataRow.cs (this[]) : Fix the condition for throwing RowNotInTableException.
210 (RejectChanges) : Detach row when state was Added.
211 (CollectionChanged) : Fix a bug.
213 * ExpressionElement (ValidateExpression) : Fix a bug.
215 * ForeignKeyConstraint.cs (AssertConstraint) : Added implementation. Check all rows from child table have
216 a parent row in the parent table.
217 (_validateColumns) : Fix bugs.
219 * MergeManager.cs (AdjustSchema) : Fix a bug.
221 * XmlDataLoader.cs (ReadModeInferSchema) : Change implementation. Now we can read nested xml, and we generate the relations
224 2003-11-30 Eran Domb <erand@mainsoft.com>
225 * DataColumnCollection.cs (this[string name]) : Use IndexOf to find the column.
226 (Add) : Find if the new column name is the same as the one found in IndexOf.
227 (IndexOf) : New method.
228 (Contains) : Use new IndexOf.
229 (IndexOf) : Use new IndexOf.
231 * DataRelationCollection.cs (DataRelationCollection.AddCore) : Add The Relation to the collection.
232 (DataSetRelationCollection.AddCore) : First add the UniqueConstraint.
234 * DataRow.cs (this[int columnIndex, DataRowVersion version]) : Change exceptions.
235 (Delete) : Detach row if the RowState was Added.
236 (GetChildRows) : Get the array form the ChildTable.
237 (GetParentRows) : Get the array from the ParenTable.
239 * DataRowCollection.cs (Remove) : Check if row state is Detached to avoid exception.
241 * DataSet.cs (IXmlSerializable.ReadXml) : Do not call MoveToContent and ReadEndElement - the XmlSerializationReader does it.
243 * DataTable.cs (PrimaryKey) : Fix bugs.
244 (Compute) : First call Select. Then create ExpressionAggregate to aggregate the Select result.
246 * DataTableCollection.cs (Add) : Fix a bug.
248 * ExpressionElement.cs (ValidateExpression) : Turning ValidateExpression to static.
249 (Result) : Added new interface to AggregateExpression that get DataRow[] as a param.
250 Some code style changes (tab instead of whit spaces, alignment, etc...).
252 * ForeignKeyConstraint.cs (_validateColumns) : Throw correct exception.
254 * MergeManager.cs (AdjustSchema) : Fix a bug.
258 2003-11-26 Miguel de Icaza <miguel@ximian.com>
260 * DataSet.cs: Add a few more missing methods, code style updated
263 2003-11-26 Tim Coleman <tim@timcoleman.com>
265 * ConflictOptions.cs DataAdapterException.cs DataTableReader.cs
266 * DbMetaData.cs FillOptions.cs IDataReader2.cs IDataRecord2.cs
267 * IDataUpdatableRecord.cs IDbAsyncCommand.cs IDbAsyncConnection.cs
268 * IDbExecutionContext.cs IGetTypedData.cs ISetTypedData.cs
269 * LoadOption.cs OperationAbortedException.cs ResultSetOptions.cs
270 * ResultSetSensitivity.cs StatementCompletedEventArgs.cs
271 * StatementCompletedEventHandler.cs UpdateOptions.cs:
272 New classes added for NET_1_2
273 * DBConcurrencyException.cs DataRelation.cs DataSet.cs DataTable.cs
274 * DataTableCollection.cs DataView.cs ForeignKeyConstraint.cs:
275 Modifications to add new NET_1_2 functions
277 2003-11-25 Tim Coleman <tim@timcoleman.com>
281 2003-11-21 Pedro Martínez Juliá <yoros@wanadoo.es>
283 * DataRow.cs: Detached row can be accesible (new rows from data
284 table are detached). Closes but #51263.
286 2003-11-19 Eran Domb <erand@mainsoft.com>
287 * DataRow.cs : Throw exceptions if Row is Detached.
288 (EndEdit) : Check that we are not in middle of ChangeEvent.
289 (AcceptChanges) : Detach the row.
291 * DataRelation.cs : throw correct exception.
292 *UniqueConstraint.cs : throw correct exception.
295 2003-11-09 Pedro Martínez Juliá <yoros@wanadoo.es>
297 * DataRow.cs: Use RemoveInternal instead of Remove because the last
298 one uses Delete and AcceptChanges.
300 * DataRowCollection.cs: When removing, Delete and AcceptChanges
301 method from the row are called. Added an internal method that will
302 be used by DataRow to "physically" remove the row from the list.
304 2003-11-09 Pedro Martínez Juliá <yoros@wanadoo.es>
306 * DataRowCollection.cs: To follow the specification: Remove and
307 RemoveAt should remove the row. But needed to call DeletingDataRow
308 to prepare the deleting.
310 * DataRow.cs: Don't call DeletingDataRow when it is called by the
311 method Table.Rows.Remove.
313 2003-11-09 Pedro Martínez Juliá <yoros@wanadoo.es>
315 * DataRowCollection.cs: Make the row be deleted by itself. If not,
316 it fails because we need to call OnRowDeleting and OnRowDeleted. It
317 is full implemented inside DataRow.
319 2003-11-05 Eran Domb <erand@mainsoft.com>
320 * DataView.cs (ctor) : Changing default RowStateFilter to CurrentRow.
322 2003-11-04 Eran Domb <erand@mainsoft.com>
323 * DataRow.cs (CheckChildRows) : Improving the implementation - checking child for all FK, and not
325 (GetChildRows) : Adding some checks.
326 (GetParentRows) : Adding some checks. Fix a bug in implementation.
327 (SetParentRow) : Added implementation.
329 * DataRowCollection.cs (Add) : Added more checks on the row added to the collection.
330 * DataTable.cs (Copy) : Set the During Loading flag to save unnecessary assertions.
331 * ForeignKeyConstraint.cs (AssertConstraint) : Fixing bugs in implementation. Checking for DBNull values in the row.
332 * MergeManager.cs : Check that the target table is not null.
334 2003-10-27 Eran Domb <erand@mainsoft.com>
335 * DataColumn.cs (DefaultValue) : Changing null value to DBNull. Checking that the type of the new default value
336 can be converted to the column type.
338 * DataRelationCollection.cs (AddCore) : Give the new FK the name of the relation.
340 * DataRow.cs (EndEdit) : Check if we need to validate the constraints.
341 (GetParentRows, GetChildRows) : Checking that the row has the wanted version, before accessing the row's value.
343 * DataRowCollection.cs (Add) : Fixing a bug.
344 (Clear) : Before clearing the array check that there is no violation of FK constraint.
346 * DataSet.cs (Prefix) : If value is null chage it to empty string.
347 (GetXml) : Removing the Processing Instructions from the xml string as in MS ADO.NET.
349 * ExpressionElement : Adding support for IN expresion.
351 * DataTable (CopyConstraints) : New method that copy the tables constraints to the copy table.
352 (Select) : Adding support for DataViewwRowState.
354 * ForeignKeyConstraint.cs (AssertConstraint) : Adding implementation.
356 * MergeManager.cs (MergeRow) : Fix bugs.
358 2003-10-27 Eran Domb <erand@mainsoft.com>
359 * DataRow.cs (SetColumnValue): Donot check null value when in midle of loading data.
360 check null values when ending loading data.
362 * DataSet.cs (RejectChanges) : Imlementation.
363 (Prefix) : If prefix was changed fire event. Check that the prefix is not null - if null,
364 change it to empty string.
366 * DataTable.cs (BeginLoadData, EndLoadData) : Impemantation.
368 2003-10-22 Eran Domb <erand@mainsoft.com>
369 * MergeManager.cs : Fixing bugs. Adding check for PrimaryKey matching.
371 * ConstraintCollection.cs (RamoveAt): Change implemntation.
373 * DataTableCollection (CanRemove): Removing cast to Constraint.
375 2003-10-22 Eran Domb <erand@mainsoft.com>
376 * DataRelationCollection.cs (AddCore): The unique constraint was added even if the createConstraints flag was false.
377 (Clear): The collection was cleared without removing the relation from the parent and child tables.
379 * DataSet.cs (Copy, Clone): The Relations of the DataSet were not copy.
380 (HasChanges, Reset): Imlementation.
382 * DataTable.cs (HasErrors): There is no flag for errors, instead the table ask her row if they have any errors.
\r
383 This is because the we do not no when to turn off the flag.
384 (Locale): Changing implementation to behave like ADO.NET.
385 (AcceptChanges): Fix bug.
386 (Clear): Check that this table is not referenced from a foreign key constraint.
387 (Copy): Do not try to access a deleted row.
388 (CopyProperties): Copy the PrimaryKey.
389 (GetChanges, ImportRow): Implementation.
390 (LoadDataRow): Adding implementation if the table has PrimaryKey.
391 (ToString): Changing implementation to behave like ADO.NET.
393 * UniqueConstraint.cs (AssertConstraint): support for Multiple DataColumns in the constraint.
395 * DataRow.cs (Ctor): In the constructor we initiate the current array, but we should initiate only the proposed array for new rows.
396 (HasErrors): Implementation.
397 (Delete): Added checking for child rows of the deleted row.
398 (EndEdit): Added checking for child row and firing events.
399 (GetColumnError): Added a check that the method will not return null, as in ADO.NET(an empty string is returned).
400 (GetColumnsInError): Added a check for null values in column error.
401 (HasVersion): Added special treatment for special RowState.
402 (CollectionChanged): More checks to avoid NullReferenceException.
404 * DataRowCollection.cs (Remove): Fix a bug.
\r
407 2003-10-01 Duncan Mak <duncan@ximian.com>
409 More patches from Eran Domb <erand@mainsoft.com>.
411 * MergeManager.cs: New file.
413 * DataRelationCollection.cs (AddCore): Check that a
414 UniqueConstraint is already exists. It loops over the Relations
415 instead of the Constraints.
416 (Add, AddCore): The relation was added twice.
418 * DataSet.cs (Merge, GetChanges, HasChanges): Implemented.
420 2003-09-30 Duncan Mak <duncan@ximian.com>
422 Patches from Eran Domb <erand@mainsoft.com>.
424 * DataRelation.cs (constructor): When the name of the relation is
425 null, it should return an empty, not "Relation".
427 * DataRow.cs (AcceptChanges): Added special case for
429 (CancelEdit): Set editing flag to false.
430 (IsNull): Check that the value is DBNull.
432 * DataRowCollection.cs (Add): There was no check that the table of
433 the collection is owned by a DataSet.
435 * DataSet.cs (OnMergeFailed): Added.
437 * UniqueConstraint.cs (AssertConstraint): There was no check that
438 values in the row are not null, where it is a primary key
439 column. Also check that the row has a proposed version, if not,
440 get the current version when we compare the rows.
442 2003-09-25 Duncan Mak <duncan@ximian.com>
444 Patches from Eran Domb <erand@mainsoft.com>.
446 * DataColumn.cs (Unique): Implemented.
449 * ConstraintCollection.cs:
450 * ForeignKeyConstraint.cs (_ensureUniqueConstraintExists): Fixes
451 an Exception thrown. Details:
452 http://lists.ximian.com/archives/public/mono-devel-list/2003-September/002130.html
454 * DataRowCollection.cs (Add): There is no checking that there is
455 no violation of the unique constrains.
457 * UniqueConstraint.cs (AssertConstraint): There is no checking on
458 all columns in the constraint.
460 * DataTableCollection (Add): Correctly throw an Exception, more
462 http://lists.ximian.com/archives/public/mono-devel-list/2003-September/002117.html
463 (Remove, RemoveAt): Implemented.
465 2003-07-31 Duncan Mak <duncan@ximian.com>
467 * DBConcurrencyException.cs: Added new NET_1_1 no-param constructor.
469 2003-07-25 Ravi Pratap <ravi@ximian.com>
471 * DataRelation.cs (OnPropertyChanging): Calling the 'Invoke'
472 method on a delegate is disallowed - fix this.
474 2003-07-22 Lluis Sanchez Gual <lluis@ximian.com>
476 * DataSet.cs: Implemented IXmlSerializable interface. Added basic support for
477 xml serialization. Modified method of writing schema. Now it creates
478 a XmlSchema object and serializes it using XmlSerializer.
479 * XmlConstants.cs: Added constants for data type names.
480 * XmlDataLoader.cs: Fixed deserialization of data. Now converts data to the
481 type specified in the column.
483 2003-04-20 Alan Tam <Tam@SiuLung.com>
485 * DataRelationCollection.cs: Fix a bug that prevent relations
486 from being added via DataSet.
488 2003-04-12 Ville Palo <vi64pa@kolumbus.fi>
490 * UniqueConstraint.cs: one tiny fix.
492 2003-04-05 Ville Palo <vi64pa@kolumbus.fi>
494 * DataTable.cs: Remove UniqueConstraints when adding new ones
496 2003-04-04 Ville Palo <vi64pa@kolumbus.fi>
498 * DataColumnCollection.cs: Little 'case sensitive' fix
500 2003-04-04 Ville Palo <vi64pa@kolumbus.fi>
502 * DataRow.cs: AutoIncrement handling to Constructor
503 * DataRowCollection.cs: This doesnt need anymore AutoIncrements
505 2003-03-27 Ville Palo <vi64pa@kolumbus.fi>
507 * DataTable.cs: Some fixes to PrimaryKey etc...
508 * UniqueConstraint.cs: Little clean up
510 2003-03-27 Ville Palo <vi64pa@kolumbus.fi>
512 * DataTable.cs: Tiny fix to ToString () -method
514 2003-03-27 Ville Palo <vi64pa@kolumbus.fi>
516 * ConstraintCollection.cs: Little fix.
517 * DataColumn.cs: Added new internal method SetUnique()
518 * UniqueConstraint.cs: some little fixes
520 2003-03-26 Ville Palo <vi64pa@kolumbus.fi>
522 * DataRowCollection.cs: Bugfixes, implementation,...
524 2003-03-26 Ville Palo <vi64pa@kolumbus.fi>
526 * DataColumn.cs: If DataType if set to something else than short, int
527 or long and AutoIncrement is true, AutoIncrement is must set to false.
529 2003-03-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
532 (BeginEdit): fixed array bound problem when a column has been added.
533 (EndEdit): just assign proposed to current as proposed is set to null.
534 This also fixes another array boudn problem.
536 2003-03-21 Alan Tam <Tam@SiuLung.com>
538 * DataRow.cs: Fixed problems in accessers, BeginEdit, CancelEdit,
539 EndEdit and AcceptChanges to act correctly according to DataRowState
541 * DataRowCollection.cs: Call AttachRow and DetachRow when a row is
542 attached and detached from the collection.
544 2003-03-20 Alan Tam <Tam@SiuLung.com>
546 * DataColumn.cs: Store empty string for Expression when null is passed in.
547 Classes generated by XSD.exe passes null by default.
549 2003-03-16 Ville Palo <vi64pa@kolumbus.fi>
551 * DataColumnCollection.cs: Tiny clean up
553 2003-03-16 Ville Palo <vi64pa@kolumbus.fi>
555 * DataColumn.cs: little fixes.
556 * DataColumnCollection.cs: Lots of little fixes and improvments.
558 2003-03-12 Alan Tam <Tam@SiuLung.com>
560 * DataSet.cs: Fixed a bug that the file written does not close correctly.
562 2003-03-08 Alan Tam <Tam@SiuLung.com>
564 * DataRelationCollection.cs: Removed the mis-overridden methods
565 * DataRow.cs: Fixed an attribute
566 * DataSet.cs: Fixed the modifiers
568 2003-03-06 Aleksey Demakov <avd@openlinksw.com>
570 * DataTableCollection.cs: The Contains (string name),
571 IndexOf (string name) methods, and item[string name] indexer
572 now behave more like .NET with respect to case-sensitivity.
573 That is if there is an exactly matching item then this one is used.
574 If there is only one item differing in case then it used.
575 If there are more than one item differing in case then
576 Contains returns false, IndexOf returns -1, and item[]
577 throws an ArgumentException.
579 2003-02-28 Ville Palo <vi64pa@kolumbus.fi>
581 * ExpressionElement.cs: More implementation.
583 2003-02-28 Alan Tam <Tam@SiuLung.com>
584 * DataSet.cs: Changed WriteTable so that it now calls the newly written
585 WriteObjectXml to direct the call to the respective XmlConvert method.
586 This fixes the wrong format written to XML files of bool, float,
587 double, DateTime and TimeSpan types.
589 2003-02-25 Alan Tam <Tam@SiuLung.com>
591 * DataRelation.cs: Added SetDataSet for DataSetRelationCollection to use.
592 * DataRelationCollection.cs: Implemented AddRange and Contains.
593 Implemented AddRange, Clear, List and RemoveCore for DataSetRelationColletion.
594 Implemented AddCore, List and RemoveCore for DataTableRelationCollection.
595 Reimplemented most Add methods to eliminate duplicated checks.
596 Centralized RelationName generation procedure in GetNextDefaultRelationName.
598 2003-02-25 Alan Tam <Tam@SiuLung.com>
600 * DataColumn.cs: Fixed wrong storage representation of Expression
601 (using empty string instead of null) so that ToString() returns nothing.
602 * DataColumnCollection.cs: Reimplemented GetNextDefaultColumnName so that
603 auto column naming now works as expected. Reimplemented some Add methods
604 to eliminate code duplication.
606 2003-02-19 Ville Palo <vi64pa@kolumbus.fi>
608 * DataTable.cs: DataTable.CaseSensitive follows parent
609 DataSet.CaseSensitive property if DataTable.CaseSensitive has never
610 been changed directly from DataTable
612 2003-02-19 Ville Palo <vi64pa@kolumbus.fi>
614 * DataSet.cs: When CaseSensitive property is changed all of the Tables
615 of DataSet have to change too
617 2003-02-19 Daniel Morgan <danmorg@sc.rr.com>
619 * InternalDataCollectionBase.cs: revert change to field
625 * DataSet.cs: commented use of DesignerAttribute
626 because it broke the build. According to MSDN,
627 DesignerAttribute does not have a zero-argument constructor
629 2003-02-18 Ville Palo <vi64pa@kolumbus.fi>
631 * DataColumnCollectin.cs: Little fix for indexer and case sensitivity
633 2003-02-18 Alan Tam <Tam@SiuLung.com>
635 * DataRow.cs: Implemented GetParentRow and GetParentRows.
636 * DataSet.cs: Added stub for HasChanges, InferXmlSchema,
637 OnPropertyChanging, OnRemoveRelation, OnRemoveTable,
638 RaisePropertyChanging.
639 * DataTable.cs: Implemented NewRowArray.
640 * DataTablePropertyDescriptor: Fixed a modifier.
641 * InternalDataCollectionBase.cs: Fixed modifiers. Implemented SyncRoot.
642 * PropertyCollection.cs: Minor fix.
643 * ConstraintCollection.cs DataColumn.cs DataColumnCollection.cs
644 * DataRelation.cs DataRelationCollection.cs DataRow.cs
645 * DataRowCollection.cs DataRowState.cs DataSet.cs DataTable.cs
646 * DataTableCollection.cs DataTablePropertyDescriptor.cs DataView.cs
647 * DataViewManager.cs DataViewRowState.cs DataViewSettingCollection.cs
648 * ForeignKeyConstraint.cs InternalDataCollectionBase.cs
649 * PropertyCollection.cs UniqueConstraint.cs: Added missing attributes
651 2003-02-08 Ville Palo <vi64pa@koti.soon.fi>
653 * ExpressionElement.cs: More implementation
655 2003-02-05 Alan Tam <Tam@SiuLung.com>
657 * DataSet.cs: Added framework for DataSet.Update Implemented missing
658 methods GetSchemaSerializable, GetSerializationData,
659 ReadXmlSerializable, ShouldSerializeRelations and ShouldSerializeTables
661 * DataTable.cs: Implemented missing methods CreateInstance and
662 GetRowType for DataTable
664 2003-02-03 Ville Palo <vi64pa@koti.soon.fi>
666 * DataSet.cs: Implemented private method MapType for
667 mapping datatypes for XmlSchema
669 2003-02-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
671 * DataView.cs: implemented Dispose.
673 2003-01-30 Ville Palo <vi64pa@koti.soon.fi>
675 * ExpressionElement.cs: Added new file. This file is for parsing
676 and DataData.Select () -methods and DataColumn.Expression -property
677 * DataTable.cs: Implemented Select(string) -method
679 2003-01-28 Ville Palo <vi64pa@koti.soon.fi>
681 * DataSet.cs: One little fix to writing xml
683 2003-01-27 Ville Palo <vi64pa@koti.soon.fi>
685 * XmlSchemaMapper.cs: Some fixes.
686 * DatSet.cs: Some XmlFixes and BeginInit ()/ EndInit () -fix
689 2003-01-24 Ville Palo <vi64pa@koti.soon.fi>
691 * UniqueConstraint.cs: Do not set columns Unique property true
693 * ForeignKeyConstraint.cs: Add UniqueConstraint to parent Table
695 2003-01-18 Ville Palo <vi64pa@koti.soon.fi>
697 * DataTableCollection.cs: Now names new DataTable if it doesn't
700 2003-01-17 Ville Palo <vi64pa@koti.soon.fi>
702 * XmlSchemaMapper.cs: Improvments.
703 * XmlConstaints.cs: Added more constants.
704 * DataSet.cs: Improvments of reading and writing xml
705 * DataColumn.cs: Added default values of properties.
707 2003-01-14 Ville Palo <vi64pa@koti.soon.fi>
709 * XmlSchemaMapper.cs: Some improvments
711 2003-01-13 Ville Palo <vi64pa@koti.soon.fi>
713 * DataRowCollection.cs: Added IndexOutOfRangeException
714 * DataTableCollection.cs: Added OnCollectionChanging and
715 OnCollectionChanged events.
716 * DataSet.cs: Many fixes. Implemented Clone () and Copy () -methods
717 * DataTable.cs: Implemented Copy () and Clone () methods.
718 * XmlDataLoader.cs: some fixes.
719 * XmlSchemaMapper.cs: comments.
721 2003-01-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
723 * DataColumnPropertyDescriptor.cs: store columnIndex in the .ctor.
725 2003-01-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
727 * DataColumnPropertyDescriptor.cs: fixed typo.
728 * DataViewManagerListItemTypeDescriptor.cs: added new internal property
729 to get the DataViewManager and removed TablePD class.
730 * DataTablePropertyDescriptor.cs: TablePD class is now this one as
731 suggested by danmorg.
733 2003-01-06 Ville Palo <vi64pa@koti.soon.fi>
735 * XmlDataLoader.cs: Moved diffgram stuff to new internal class
737 * XmlDiffLoader.cs: new class for diffgrams. Added handling of
738 diffgr:Errors and some fixes and changed XmlReader to XPathNavigator.
740 2003-01-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
742 * DataView.cs: made dataViewManager internal.
743 * DataViewManager.cs: use ICustomTypeDescriptor. We don't want the
744 properties of the object, but the values of the columns present in a
747 * DataViewManagerListItemTypeDescriptor.cs: implemented GetProperties,
748 which returns a PropertyDescriptorCollection. Created a new class
749 derived from PropertyDescriptor that treats Table as an object whose
750 properties are DataRowView.
752 2003-01-04 Ville Palo <vi64pa@koti.soon.fi>
754 * XmlSchemaMapper.cs: Added handling for Constraints, Attributes.
756 2003-01-04 Ville Palo <vi64pa@koti.soon.fi>
758 * DataColumn.cs: ExtendedProperties is by default !null-
760 2003-01-04 Ville Palo <vi64pa@koti.soon.fi>
762 * DataColumnCollection.cs: Add (DataColumn Column) -method didn't
763 set column's ordinal.
765 2003-01-02 Ville Palo <vi64pa@koti.soon.fi>
768 * XmlDataLoader.cs: XmlReader closing fixes.
769 * XmlSchemaReader.cs: Added support for ref=
771 2003-01-01 Ville Palo <vi64pa@koti.soon.fi>
774 - Added XmlReader and XmlWriter Closing.
775 - Moved ReadXmlSchema stuff to new internal class XmlSchemaMapper.
777 - Much better way IMHO to map xmlschema than the old one in
778 DataSet.cs. Its, more flexible, cleaner, ...
780 2002-12-29 Ville Palo <vi64pa@koti.soon.fi>
782 * XmlDataLoader.cs: Reading diffgrams.
784 2002-12-29 Ville Palo <vi64pa@koti.soon.fi>
786 * DataRow.cs: Little fix to indexer and DataColumnCang* trigger fixes.
787 * DataTable.cs: Added ChanginDataColumn () for triggering
788 DataColumnChanging event
790 2002-12-28 Ville Palo <vi64pa@koti.soon.fi>
792 * DataSet.cs: Indentations to WriteXmlSchema () and one little fix
794 2002-12-28 Ville Palo <vi64pa@koti.soon.fi>
796 * DataSet.cs: Indentations to WriteXml ()
798 2002-12-27 Ville Palo <vi64pa@koti.soon.fi>
801 * XmlDataLoader.cs: Moved ReadXml -stuff from DataSet.cs to new
802 class XmlDataLoader.cs
804 2002-12-19 Ville Palo <vi64pa@koti.soon.fi>
806 * DataSet.cs Implemented ReadXml with XmlReadMode.ReadSchema
808 2002-12-18 Ville Palo <vi64pa@koti.soon.fi>
810 * DataSet.cs: Started to implement ReadXml-methods.
812 2002-12-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
814 * DataSet.cs: implemented DefaultViewManager and GetList.
816 * DataViewManager.cs: a bit of work on IList and ITypedList needed by
817 DataList in System.Web.
819 * DataViewManagerListItemTypeDescriptor.cs: custom type descriptor for
822 2002-12-16 Ville Palo <vi64pa@koti.soon.fi>
825 * DataTable.cs: Fixed NullException (rollback -event)
826 * DataSet.cs: WriteXml -method does not anymore write <?xml... row.
828 2002-12-15 Ville Palo <vi64pa@koti.soon.fi>
831 * DataRowCollection.cs: Moved event triggering from DataRow to
834 2002-12-09 Ville Palo <vi64pa@koti.soon.fi>
836 * DataSet.cs: Little fix to WriteTable () -method
837 and DoReadXmlSchema () -method.
839 2002-12-06 Ville Palo <vi64pa@koti.soon.fi>
841 * DataSet.cs: Clean up to reading xmlschema. This looks much better
842 now (work better too), but it not working correctly yet.
844 2002-12-04 Ville Palo <vi64pa@koti.soon.fi>
847 * DataRowCollection.cs: Added some event handlins stuff.
848 * DataSet.cs: Some fixes.
849 * DataTable.cs: Added event handlers.
851 2002-11-30 Ville Palo <vi64pa@koti.soon.fi>
853 * DataRowChangeEventArgs.cs: Implemented Action and Row properties
855 2002-11-30 Ville Palo <vi64pa@koti.soon.fi>
857 * System.Data/DataRow.cs: Added internal property XmlDataID
859 2002-11-29 Ville Palo <vi64pa@koti.soon.fi>
861 * DataSystem.Data.DataTableCollection.cs:
862 Removed HashTable. There could be situations where DataTable
863 is added to collection before it hava TableName. So using
864 HashTable is impossible.
866 2002-11-19 Carlos Guzmán Álvarez <carlosga@telefonica.net>
868 * DataRow.cs: an object that is equal to null
869 should be allowed to be set in this indexer too
872 2002-11-06 Daniel Morgan <danmorg@sc.rr.com>
874 * DataColumnPropertyDescriptor.cs: added file
876 * System.Data/DataRowView.cs: started implementation
878 * DataTable.cs: stubbed more interfaces. Implemented
879 IListSource.GetList()
881 * DataView.cs: stubbed more interfaces. Implemented
882 some properties and methods: GetEnumerator(),
883 ITypedList.GetItemProperties, Item indexer, CopyTo()
885 2002-05-18 Nick Drochak <ndrochak@gol.com>
887 * DataRow.cs: Fix typo.