ChangeLog 138 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712
  1. 2008-06-12 Atsushi Enomoto <[email protected]>
  2. * DataSet.cs, DataTable.cs, XmlSchemaDataImporter.cs : constraints
  3. on missing tables are ignored when reading a DataTable schema.
  4. Fixes part of DataTableTest.ReadXmlSchema() test.
  5. 2008-05-30 Marek Habersack <[email protected]>
  6. * Constraint.cs: do not use synthetized event accessors (to avoid
  7. locks).
  8. 2008-05-29 Marek Habersack <[email protected]>
  9. * DataColumn.cs: do not use synthetic methods for events - this
  10. avoids unnecessary locking, especially for internal events.
  11. 2008-04-21 Gert Driesen <[email protected]>
  12. * DataRowView.cs: Modified argument names to match MS. Use
  13. String.Empty instead of "". Code formatting.
  14. 2008-04-16 Veerapuram Varadhan <[email protected]>
  15. * XmlDataInferenceLoader.cs (ReadXml): Make sure the name of
  16. reference key column(s) in child tables are unique.
  17. * XmlSchemaWriter.cs (WriteSchema, WriteDataSetElement,
  18. WriteTableType, WriteChildRelations): Handle the scenario wherein
  19. we have a relation and only one table. This can occur when we
  20. have an XML with same parent/child table names.
  21. 2008-03-31 Veerapuram Varadhan <[email protected]>
  22. * DataView.cs: Reverting rev#98474 changes - as it broke quite a
  23. few test profiles.
  24. 2008-03-23 Gert Driesen <[email protected]>
  25. * DataSet.cs: Corcompare fix.
  26. * IDataRecord.cs: Corcompare fix.
  27. 2008-03-22 Gert Driesen <[email protected]>
  28. * DataViewSettingCollection.cs: Corcompare fixes and code formatting.
  29. * SyntaxErrorException.cs: Corcompare fixes and code formatting.
  30. * EvaluateException.cs: Corcompare fixes and code formatting.
  31. * StrongTypingException.cs: Coecompare fixes and code formatting.
  32. * ReadOnlyException.cs: Corcompare fixes and code formatting.
  33. * DataTableCollection.cs: Corcompare fixes and code formatting.
  34. * MissingPrimaryKeyException.cs: Corcompare fixes and code formatting.
  35. * DeletedRowInaccesibleException.cs: Corcompare fixes and code
  36. formatting.
  37. * DataSet.cs: Corcompare fixes and code formatting.
  38. * DuplicateNameException.cs: Corcompare fixes and code formatting.
  39. * DataView.cs: Corcompare fixes and code formatting.
  40. * VersionNotFoundException.cs: Corcompare fixes and code formatting.
  41. * MergeFailedEventArgs.cs: Corcomare fixes and code formatting.
  42. * InvalidExpressionException.cs: Corcompare fixes and code formatting.
  43. * DBConcurrencyException.cs: Corcompare fixes and code formatting.
  44. * DataRowView.cs: Corcompare fixes and code formatting.
  45. * DataViewManager.cs: Corcompare fixes and code formatting.
  46. * ConstraintException.cs: Corcompare fixes and code formatting.
  47. * InvalidConstraintException.cs: Corcompare fixes and code formatting.
  48. * IDataRecord.cs: Corcompare fixes.
  49. * RowNotInTableException.cs: Corcompare fixes and code formatting.
  50. * TypeDataSetGeneratorException.cs: Corcompare fixes and code
  51. formatting.
  52. * InRowChangingEventException.cs: Corcompare fixes and code formatting.
  53. * NoNullAllowedException.cs: Corcompare fixes and code formatting.
  54. * DataException.cs: Corcompare fixes and code formatting.
  55. 2008-03-17 Veerapuram Varadhan <[email protected]>
  56. ** Fixes part1 of #357947
  57. * DataView.cs: (OnRowDeleted): Don't call update, instead delete the row
  58. directly from Index. Peformance fix submitted by Hubert FONGARNAND
  59. <[email protected]>.
  60. 2008-02-04 Arina Itkes <[email protected]>
  61. * DataTable.cs: Fix for IXmlSerializable.ReadXml.
  62. 2008-01-28 Arina Itkes <[email protected]>
  63. * DataTable.cs: Fix for IXmlSerializable.WriteXml.
  64. 2007-10-21 Gert Driesen <[email protected]>
  65. * DataColumn.cs: Fixed ParamName of ArgumentNullException. Modified
  66. exception message for invalid DateTimeMode value to match MS. Code
  67. formatting.
  68. 2007-10-19 Nagappan <[email protected]>
  69. * DataRelation.cs: Removed bogus TODO.
  70. 2007-09-27 Nagappan A <[email protected]>
  71. * DataRelationCollection.cs: Added LAME spec comment as there is no
  72. relevant event. Removed MonoTODO too.
  73. 2007-09-26 Nagappan A <[email protected]>
  74. * DataView.cs (ToTable): Added params keyword.
  75. * DataTable.cs: Added XmlSchemaProvider attribute.
  76. 2007-09-25 Konstantin Triger <[email protected]>
  77. * DataSet.cs: correct WriteAttributeString while writing xml with
  78. XmlWriteMode.WriteSchema.
  79. 2007-09-25 Nagappan A <[email protected]>
  80. * DataTable.cs: Code alignment.
  81. 2007-08-14 Vladimir Krasnov <[email protected]>
  82. * DataColumnCollection.cs: refactoring, fixed columnNameCount comparer
  83. to remove culture sensitive ToLower() calls
  84. 2007-07-22 Nagappan A <[email protected]>
  85. * DataRow.cs: Added internal set property for Table in 2.0
  86. profile.
  87. * DataColumn.cs: Added internal set property for Table in 2.0
  88. profile.
  89. 2007-07-01 Gert Driesen <[email protected]>
  90. * DataRowCollection.cs: Only override Count on 2.0 profile.
  91. * RelatedDataView.cs: Fixed line endings.
  92. * XmlDataInferenceLoader.cs: Fixed line endings.
  93. 2007-06-30 Gert Driesen <[email protected]>
  94. * DataTableCollection.cs: CopyTo is 2.0 only. Removed extra tabs,
  95. and changed spaces to tabs.
  96. 2007-06-06 Nagappan A <[email protected]>
  97. * DataTable.cs (Select): Removed ununsed variable.
  98. 2007-05-30 Nagappan A <[email protected]>
  99. * DataColumnCollection.cs (CopyTo): Method specific to 2.0
  100. profile.
  101. * DataRowCollection.cs (Count): Property is overridden in 2.0
  102. profile.
  103. * TypedDataSetGenerator.cs: Class is obsolete in 2.0 profile.
  104. * DataRelationCollection.cs (CopyTo): Method specific to 2.0
  105. profile.
  106. 2007-05-18 Rolf Bjarne Kvinge <[email protected]>
  107. * CustomDataClassGenerator.cs: Misc fixes in order to emit correct VB code.
  108. CreateDataSetDefaultCtor: we're creating a delegate, not an object, so use a DelegateCreateExpression.
  109. CreateDataSetSchemaChanged: we're comparing value types, use the correct equality operator.
  110. CreateTableGetEnumerator: explicity state that the method is an implementation of IEnumerable.GetEnumerator.
  111. CreateTableEventStarter: we're invoking a delegate, so use a DelegateInvokeExpression.
  112. Several changes to not generate members with names that only differ by case.
  113. 2007-05-18 Chris Toshok <[email protected]>
  114. * DataColumnCollection.cs (Add ()): handle the default name case
  115. in Add(DataColumn).
  116. (Add (string)): same - let Add(DataColumn) handle the default name
  117. setting.
  118. (Add (DataColumn)): in the 1.1 case, we need to add the column's
  119. PropertyChanged handler *before* possibly setting the column name
  120. to the default so we emit the right events (Changed/Added). In
  121. the 2.0 case, we add the event handler after the name is set, and
  122. therefore only emit the Added event.
  123. 2007-05-07 Adar Wesley <[email protected]>
  124. * ConstraintCollection.cs: added CopyTo method with strongly typed Constraint[]
  125. parameter.
  126. * DataTable.cs: added implementation of IXmlSerializable. Added missing
  127. method ReadXmlSerializable.
  128. 2007-04-19 Chris Toshok <[email protected]>
  129. * DataColumnCollection.cs (Add): the Element in our
  130. CollectionChangedEventArgs should be the column, not the
  131. collection. Also, add an event handler for the column's
  132. PropertyChanged event so we can propagate metadata changes.
  133. (Remove): Analogous change to the CollectionChangedEventArgs as in
  134. Add. Also, unhook the column's PropertyChanged event.
  135. (OnCollectionmetaDataChanged): emit our new event.
  136. (ColumnPropertyChanged): called when the column's ColumnName
  137. property changes. Emit the proper CollectionChangeEvent.
  138. * DataView.cs (ColumnCollectionChanged): fix up the comment about
  139. CollectionChangeAction.Refresh, and make explicit what generates
  140. it.
  141. (RegisterEventHandlers): hook up
  142. DataColumnCollectoin.CollectionMetaDataChanged.
  143. (RegisterEventHandlers): unhook
  144. DataColumnCollectoin.CollectionMetaDataChanged.
  145. 2007-02-23 Nagappan A <[email protected]>
  146. * DataRow.cs (Item): Checks whether this DataRow exist in the
  147. DataRowCollection, then compute the expression. Fixes bug #
  148. 80505.
  149. * DataRowCollection.cs (IndexOf): Modified as internal method for
  150. 1.0 profile.
  151. * XmlDataReader.cs (StringToObject): DataTables containing
  152. System.Type throw exception on deserializing. Fixes bug # 80596.
  153. * XmlDataLoader.cs (StringToObject): DataTables containing
  154. System.Type throw exception on deserializing. Fixes bug # 80596.
  155. 2007-02-20 Konstantin Triger <[email protected]>
  156. * XmlSchemaDataImporter.cs: ensure the tables are created in document order.
  157. 2007-02-19 Konstantin Triger <[email protected]>
  158. * XmlDataReader.cs, XmlDataInferenceLoader.cs, XmlDiffLoader.cs:
  159. ignore attributes from "http://www.w3.org/XML/1998/namespace".
  160. * XmlConstants.cs: add constant for "http://www.w3.org/XML/1998/namespace".
  161. * XmlDataInferenceLoader.cs: track the added elements index to fix the
  162. added column ordinal.
  163. 2006-12-11 Chris Toshok <[email protected]>
  164. * DataView.cs: GetItemProperties should return an empty collection
  165. if we have no data table. Presently we NRE.
  166. 2006-12-08 Nagappan A <[email protected]>
  167. * DataTable.cs (ReadXml): Removed if condition, as it should not
  168. check the exception string.
  169. 2006-12-07 Chris Toshok <[email protected]>
  170. * DataView.cs: add CollectionChangeEventHandler's on the
  171. ChildRelations and ParentRelations collections, and emit
  172. ListChanged events with PropertyDescriptor.Added/Deleted/Changed
  173. in response.
  174. 2006-12-07 Nagappan A <[email protected]>
  175. * DataTable.cs (ReadXml): Integrated the implementation of
  176. ReadXml, patch provided by [email protected].
  177. 2006-12-05 Nagappan A <[email protected]>
  178. * DataTable.cs (WriteXmlSchema): Using XmlTextWriter instead of
  179. XmlWriter, solved the File Sharing IO Exception.
  180. 2006-11-28 Hubert FONGARNAND, FrAcdAcric Mestayer <[email protected]>
  181. * DataColumnCollection.cs : Improved Column searching when not
  182. using exact column name (case sensitivity). Fixes bug # 80075.
  183. 2006-11-28 Nagappan A <[email protected]>
  184. * XmlSchemaDataImporter.cs: Fixed 2.0 profile compilation
  185. warnings. Using AttributeSchemaType instead of AttributeType and
  186. ElementSchemaType instead of ElementType.
  187. * TypedDataSetGenerator.cs: Modified the profile check from
  188. !NET_1_1 to !NET_1_0, as this class is obsolete from 1.1 profile.
  189. * DataRelationCollection.cs (Item): Modified the property Item as
  190. abstract and implemented it in DataSetRelationCollection and
  191. DataTableRelationCollection classes.
  192. * DataRowView.cs: Remove bogus MonoTODOs.
  193. * ForeignKeyConstraint.cs (ForeignKeyConstraint): Implemented
  194. 2.0 profile's missing constructor.
  195. * XmlDataLoader.cs (StringToObject): Modify XmlConvert.ToDateTime
  196. to use XmlDateTimeSerializationMode, as the default ToDataTime
  197. method id obsolete.
  198. * XmlDataReader.cs (StringToObject): Modify XmlConvert.ToDateTime
  199. to use XmlDateTimeSerializationMode, as the default ToDataTime
  200. method id obsolete.
  201. * DataView.cs (IsInitialized): Added browsable attribute.
  202. * DataViewSettingCollection.cs (CopyTo): Implemented missing 2.0
  203. API.
  204. * DataRelation.cs (DataRelation): Added 2.0 profile constructor to
  205. take parentTableNameSpace and childTableNameSpace as argument.
  206. (FinishInit): Update parentTableNameSpace and childTableNameSpace,
  207. when the string is not empty in 2.0 profile.
  208. * DataRowCollection.cs: Implemented Count public property.
  209. Added !NET_2_0 for List protected property, as it has been removed
  210. in 2.0 prifle.
  211. (IndexOf): Implemented new public method.
  212. (CopyTo): Implemented new public override method.
  213. (GetEnumerator): Implemented new public override method.
  214. * DataTable.cs (Load): Throw ArgumentNullException, when reader
  215. argument is null.
  216. (WriteXmlSchema): Throw InvalidOperationException, when table name
  217. is empty. When DataSet Namespace is set, append that with '_x003A_'
  218. and table name.
  219. (IsInitialized): Added browsable attribute.
  220. * DataSet.cs (Load): Throw ArgumentNullException, when reader
  221. argument is null.
  222. (IsInitialized): Added browsable attribute.
  223. (WriteObjectXml): Modify XmlConvert.ToDateTime to use
  224. XmlDateTimeSerializationMode, as the default ToDataTime method id
  225. obsolete.
  226. * XmlSchemaWriter.cs (WriteSchema): Modified UseCurrentCulture to
  227. UseCurrentLocale.
  228. (WriteDataSetElement): Added minOccurs attribute.
  229. (WriteConstraints): Check for tables length, if > 1 then add the
  230. relations to XmlSchema.
  231. 2006-11-21 Nagappan A <[email protected]>
  232. * DataView.cs: Added public event Initialized.
  233. (IsInitialized): Implemented public function to check whether a
  234. dataview is initialized or not.
  235. * DataSet.cs: Added ISupportInitializeNotification for .NET 2.0
  236. profile.
  237. (RemotingFormat): Set the default value attribute as
  238. SerializationFormat.Xml.
  239. (IsInitialized): Implemented public function to check whether a
  240. table is initialized or not.
  241. (CreateDataReader): Added params keyword in argument.
  242. (Load): Implemented all Load overloaded functions.
  243. (GetObjectData): Modified to public for .NET 2.0 implementation.
  244. (IsBinarySerialized): Implemented the public API to check whether
  245. the given stream is binary serialized or not.
  246. * DataTable.cs: Added ISupportInitializeNotification for .NET 2.0
  247. profile.
  248. 2006-11-15 Nagappan A <[email protected]>
  249. * DataTable.cs (RemotingFormat): Set the default value attribute
  250. as SerializationFormat.Xml.
  251. (OnTableNewRow, NewRowAdded): Implemented new function to raise an
  252. event when a new row is added to the table.
  253. (DataTableInitialized, OnTableInitialized): Implemented new
  254. function to raise an event when a table is initialized.
  255. (IsInitialized): Implemented public function to check whether a
  256. table is initialized or not.
  257. (OnTableClearing): Raise an event before the table is cleared.
  258. (GetObjectData): Modified to public for .NET 2.0 implementation.
  259. (Load): Implemented missing API to call the registered delegate
  260. function on load exception.
  261. (WriteXmlSchema): Implemented overloaded function to write the
  262. hierarchy with XML Schema.
  263. 2006-11-15 Konstantin Triger <[email protected]>
  264. * DataTable.cs: Fixed LoadDataRow scenarios.
  265. * DataRowCollection.cs: Added override for AddInternal taking DataRowAction parameter.
  266. 2006-11-14 Konstantin Triger <[email protected]>
  267. * DataColumn.cs: consider row version wen checking row.IsNull().
  268. 2006-10-18 Nagappan A <[email protected]>
  269. * ForeignKeyConstraint.cs (_validateColumns): Parent and child
  270. columns can't be the same column - Exception, bug # 79689
  271. 2006-10-13 Nagappan A <[email protected]>
  272. * DataTable.cs (DeserializeConstraints): Fine tuned the
  273. serialization and deserialization of constraints.
  274. * DataRelationCollection.cs (Contains): Fixes bug
  275. #79233. DuplicateNameException when two relations for different
  276. DataTables in DataSet are defined
  277. 2006-10-06 Patrick Earl <[email protected]>
  278. * DataTable.cs, XmlTableWriter.cs, XmlSchemaWriter.cs, DataSet.cs:
  279. Implemented DataTable.WriteXml
  280. 2006-09-26 Nagappan A <[email protected]>
  281. * DataTable.cs, DataSet.cs, DataColumn.cs, Constraint.cs,
  282. DataRow.cs: Implementation of Binary Serialization /
  283. Deserialization.
  284. * DataTable.cs (RowsExist): Check rows based on version.
  285. * DataRow.cs: Raise exception same as MS.NET. Thanks to
  286. Hubert FONGARNAND <[email protected]> for
  287. providing this patch.
  288. 2006-09-07 Vladimir Krasnov <[email protected]>
  289. * DataSet.cs: added 2.0 stubs to solve typed dataset porting issues
  290. 2006-08-30 Nagappan A <[email protected]>
  291. * DataRow.cs (EndEdit): DataRow.EndEdit emits RowChanged too
  292. often. Fixes bug # 78885.
  293. 2006-08-14 Konstantin Triger <[email protected]>
  294. * DataTableCollection.cs, DataRelationCollection.cs, DataRowCollection.cs,
  295. DataColumnCollection.cs: implemented specialized CopyTo() method.
  296. 2006-07-26 Nagappan A <[email protected]>
  297. * DataTable.cs (GetIndex): Fixes memory explode on
  298. DataTable.Select - Bug # 77691.
  299. 2006-07-25 Nagappan A <[email protected]>
  300. * DataView.cs (OnRowCollectionChanged): On DataTable.Clear,
  301. setting rowCache to empty DataRowView. Fixes bug # 78610.
  302. * DataTable.cs (AcceptChanges): Raises Reset event. Fixes bug #
  303. 78610.
  304. 2006-07-20 Senganal T <[email protected]>
  305. * MergeManager.cs :
  306. - Merge : moved the columntypecheck to AdjustSchema,
  307. Remove the unncessary calls to Table.ResetIndexes.
  308. - AdjustSchema : check for columntypes
  309. Thanks to Deepak Kr Valechha for the patch
  310. 2006-07-17 Senganal T <[email protected]>
  311. * DataView.cs :
  312. - ToTable : Implemented all the overloads
  313. - Equals : Implemented
  314. - IBindingListView : Implemented the interface
  315. 2006-07-15 Senganal T <[email protected]>
  316. * DataTableCollection.cs :
  317. - Contain,IndexOf,Remove,Add,Indexer : support for table
  318. namespace. Remove redundant checks in Remove/Add.
  319. 2006-07-14 Senganal T <[email protected]>
  320. * DataColumn.cs :
  321. - SetOrdinal : Implemented
  322. - Ordinal : added internal set
  323. * DataColumnCollection.cs :
  324. - Add : Set the column ordinals
  325. - MoveColumn : Changes the position of column in the
  326. collection
  327. 2006-07-14 Senganal T <[email protected]>
  328. * DataTable.cs :
  329. - Merge - Implement the merge methods
  330. - Clone - Ensure column's DateTimeMode property is also copied
  331. * DataColumn.cs :
  332. - DateTimeMode : Implemement
  333. - DataTypeMatches : Added. In 2.0 profile, test DateTime
  334. property when verifying column types.
  335. * DataRelation.cs :
  336. - ctr : For DateTime columns, check DateTimeMode property
  337. * ForeignKeyConstraint.cs :
  338. - _validateColumns : For DateTime columns, check DateTimeMode
  339. property
  340. * MergeManager :
  341. - Merge : Added. Overload to merge two tables
  342. - ResolveColumns : Change the method to use a table instead of
  343. a DataSet
  344. - Renamed AdjustSchema to AdjustSchemaRelations
  345. 2006-07-13 Senganal T <[email protected]>
  346. * DataSet.cs :
  347. - WriteTables : Remove some commented out code
  348. - WriteTable : Fix the logic to skip the table data when the
  349. table has a nested relation.
  350. fixes bug #78842
  351. 2006-07-12 Senganal T <[email protected]>
  352. * ConstraintCollection.cs :
  353. - Remove (string): If constraint name is not found, throw exception
  354. - Remove (Constraint): Set the ConstraintCollection of the removed
  355. Constraint to null.
  356. Thanks to Deepak Kr Velachha for reporting the bug.
  357. 2006-07-12 Senganal T <[email protected]>
  358. * XmlDiffLoader.cs :
  359. - LoadColumnChildren : If schema name is missing, skip the
  360. element.
  361. Thanks to Deepak Kr Velachha for identifying the bug.
  362. 2006-07-11 Senganal T <[email protected]>
  363. * XmlSchemaWriter.cs :
  364. - WriteTableType : If Relation.Nested is true, then nest the
  365. table schemas. Correct the xml to add the table element within
  366. the <Sequence> element.
  367. - WriteChildRelations : Correct the Xml element name and
  368. attributes. Close the attribute correctly.
  369. * XmlSchemaDataImporter.cs :
  370. - GenerateRelationship : When creating the relations, if
  371. ParentColumn exists but Corr ChildCol is null, create a child
  372. Column with the same name and type as the parent column.
  373. - Renamed DataSetDefinesPrimaryKey to DataSetDefinesKey
  374. - DataSetDefinesKey : if either xsd:key or xsd:keyref is
  375. defined for the dataset, do not manually create the relations.
  376. - AddParentKeyColumn : if Columnname already exists, use
  377. colname_0 instead of throwing an exception.
  378. - FillDataColumnRepeatedSimpleElement : Do not set the Unique
  379. value as it creates a constraint by default. The unique value
  380. is automatically set when pk is set.
  381. - CreateChildColumns : Added. Creates a ChildColumn duplicating
  382. ParentColumn properties.
  383. 2006-06-30 Senganal T <[email protected]>
  384. * DataRow.cs :
  385. - SetAdded, SetModified : new methods in 2.0
  386. 2006-06-30 Senganal T <[email protected]>
  387. * SerializationFormat.cs, DataSetDateTime.cs, DataTableNewRowEventArgs.cs,
  388. DataTableNewRowEventHandler.cs : Added
  389. * SyntaxErrorException.cs EvaluateException.cs StrongTypingException.cs
  390. IsolationLevel.cs ReadOnlyException.cs DataTableCollection.cs
  391. DataRowState.cs MissingPrimaryKeyException.cs DeletedRowInaccessibleException.cs
  392. DuplicateNameException.cs PropertyAttributes.cs StatementType.cs
  393. VersionNotFoundException.cs FillErrorEventHandler.cs DataRowChangeEventHandler.cs
  394. XmlWriteMode.cs InvalidExpressionException.cs StateChangeEventHandler.cs
  395. DbType.cs DataColumnChangeEventHandler.cs KeyRestrictionBehavior.cs
  396. ConnectionState.cs SchemaType.cs MergeFailedEventHandler.cs SqlDbType.cs
  397. DataRowVersion.cs ForeignKeyConstraint.cs DBConcurrencyException.cs
  398. OperationAbortedException.cs MissingSchemaAction.cs DataTableClearEventHandler.cs
  399. DataRowView.cs DataRowAction.cs ConstraintCollection.cs DataTableReader.cs
  400. LoadOption.cs InvalidConstraintException.cs InternalDataCollectionBase.cs
  401. ParameterDirection.cs AcceptRejectRule.cs UpdateRowSource.cs XmlReadMode.cs
  402. TypedDataSetGenerator.cs RowNotInTableException.cs TypeDataSetGeneratorException.cs
  403. InRowChangingEventException.cs MissingMappingAction.cs NoNullAllowedException.cs
  404. CommandBehavior.cs PropertyCollection.cs CommandType.cs
  405. UpdateStatus.cs ConflictOption.cs DataViewRowState.cs Rule.cs
  406. DataColumnCollection.cs :
  407. 2.0 api fixes.
  408. 2006-06-27 Senganal T <[email protected]>
  409. * DataSet.cs, DataTable.cs : implement CreateDataReader methods
  410. * InternalDataCollectionBase.cs
  411. - ToArray () : helper method
  412. * DataTableReader.cs :
  413. - GetSchemaTable : set the schema info correctly
  414. - GetProvider*, GetChars, GetBytes, GetValues :
  415. Implemented the methods
  416. - GetName : return the name of corresponding schema.
  417. - ValidateSchemaIntact, OnColumnCollectionChanged,
  418. OnColumnChanged :
  419. Listen and raise expception if schema changes
  420. 2006-06-21 Chris Toshok <[email protected]>
  421. * DataView.cs: update the index after we successfully add the new
  422. row. This keeps the dataview's row view count in sync with the
  423. table.
  424. 2006-06-20 Chris Toshok <[email protected]>
  425. * DataView.cs: the PropertyDescriptorCollection returned by
  426. ITyepdList.GetItemProperties should include the child relations of
  427. our table, in order to match MS's behavior.
  428. * DataViewManager.cs: ICollection.Count property is always 1.
  429. 2006-06-15 Senganal T <[email protected]>
  430. * DataTable.cs :
  431. - Select : If Sort String is not provided, sort the result
  432. DataRows in Ascending Order of the Columns used in the filter
  433. 2006-06-15 Senganal T <[email protected]>
  434. * DataSet.cs :
  435. - InternalEnforceConstraints : Check if any null constraints
  436. are violated. Throw ConstraintException only after all the errors
  437. are filled.
  438. * DataTable.cs :
  439. - EnforceConstraints : Move away the logic to check for
  440. NullConstraintViolation.
  441. - AssertNotNullConstraint : Checks for Null Constraint
  442. Violation.
  443. - EndLoadData : Do not throw any exceptions here. All the
  444. errors have to be found and RowErrors set before throwing the
  445. exception.
  446. * DataRow.cs :
  447. - ImportRecrod : Check the values of the row for any null
  448. values.
  449. - SetColumnError : If the error for column is already set,
  450. do not add a new error but edit the existing error.
  451. - CheckValue : Set the NullConstraintViolation flag if either
  452. table is being loaded or if EnforceConstraints is set to
  453. false.
  454. * Constraint.cs : Do not throw exception when EnforceConstraints is
  455. set to false or table is being loaded.
  456. * UniqueConstraint.cs : Correct the error message. Set ColumnErrors
  457. along with the RowError.
  458. 2006-05-31 Gert Driesen <[email protected]>
  459. * DataTable.cs: Renamed initInProgress to fInitInProgress. BeginInit
  460. and EndInit must only be virtual in 2.0 profile. Set eol-style to CRLF.
  461. 2006-05-31 Senganal T <[email protected]>
  462. * XmlDataInferenceLoader.cs :
  463. - InferTableElement : Repeated element should result in a single
  464. inferred table.
  465. Patch from Deepak Kr Velachha
  466. 2006-04-21 Senganal T <[email protected]>
  467. * DataRowCollection.cs :
  468. - Find : If search on the table using PrimaryKey fails and if
  469. index is not being maintained (during table load), search the
  470. entire table.
  471. - Find (int) : Removed. Deadcode.
  472. - Clear :
  473. - Not necessary to delete each row from the Index.
  474. Just reset the Indexes after cleaning up the row
  475. collection.
  476. - Simplify dependency check for child tables
  477. * DataTable.cs :
  478. - LoadDataRow :
  479. - Do not use DataRowCollection.Find to search for
  480. existing records as this wud check even newly loaded rows.
  481. Use Index.Find.
  482. - Do not add new records to Index. Update Index only
  483. if an existing record is modified. New records will be
  484. taken care by EndLoadData.
  485. 2006-04-19 Senganal T <[email protected]>
  486. * XmlHelper.cs : A helper class for encoding/decoding schema names.
  487. Caches the Schema names to minimize encoding/decoding operations and
  488. duplicate strings created.
  489. * XmlSchemaWriter :
  490. - Use XmlHelper for encoding/decoding schema names.
  491. - Encode ConstraintNames when writing as xml.
  492. * DataSet.cs
  493. * XmlDataReader.cs
  494. * XmlDataInferenceLoader.cs
  495. * XmlSchemaDataImporter.cs
  496. - Use XmlHelper for encoding/decoding schema names.
  497. * DataTableCollections : Minor code refactor.
  498. * DataRow.cs : Create XmlElement only if required.
  499. 2006-04-07 Senganal T <[email protected]>
  500. * DataSet.cs :
  501. - InternalEnforceConstraints() : Reset Indexes of all tables
  502. before validating constraints. Fixes #78010
  503. 2006-03-04 Boris Kirzner <[email protected]>
  504. * TypeDataSetGeneratorException.cs: fix .Net Soap serialization compatibility.
  505. 2006-03-25 Senganal T <[email protected]>
  506. * DataRow.cs :
  507. - RejectChanges : When row is in Deleted state, add the row back to
  508. Indexes and Validate the row.
  509. 2006-03-23 Senganal T <[email protected]>
  510. * DataTable.cs :
  511. - LoadDataRow : Add the row to the indexes, when loading a new row.
  512. 2006-03-22 Senganal T <[email protected]>
  513. * DataTable.cs :
  514. - PrimaryKey : Set the IsPrimaryKey attribute before Removing from collection.
  515. - RemoveUniqueConstraints : Removed. dead code.
  516. * DataColumn.cs :
  517. - Unique :
  518. - If adding/removing constraint fails, retain Unique value
  519. - Remove redundant code
  520. * UniqueConstraint.cs :
  521. - SetIsPrimaryKey : Added. Sets the value of IsPrimaryKey.
  522. - RemoveFromConstraintCollectionCleanup : If constraint is on a single column, then
  523. set Unique for that column to false.
  524. - CanRemoveFromCollection : Do not remove constraint, if its a PrimaryKey
  525. 2006-03-20 Senganal T <[email protected]>
  526. * DataSet.cs :
  527. - CopyRelations () : When copying the relation, do not add constraints
  528. automatically for the relation.
  529. - OnMergeFailed () : If merge fails and no handler is set for the MergeFailedEvent,
  530. then throw DataException
  531. * ConstraintCollection.cs :
  532. - Add () : Check if a constraint already exists on the Columns that are being
  533. constrained.
  534. - IndexOf () : Do not check for equivalent constraints, check for the exact instance.
  535. * MergeManager.cs ():
  536. - AdjustSchema () :
  537. - Handle the MissingSchemaAction.Error case,
  538. - Do not create constraints when mergin the DataRelation
  539. - Follow the semantics for schema merge/validation when constraints are already present
  540. in the target DataSet.
  541. - AdjustPrimaryKeys () :
  542. - Code cleanup
  543. - Verify Order of Columns in the PrimaryKey when merging.
  544. - ResolveColumns : Changed the arument to DataSet. Simplifies code elsewhere.
  545. - CompareColumnArrays, CompareColumnArrays : Helper funtions.
  546. 2006-03-09 Senganal T <[email protected]>
  547. * DataRow.cs :
  548. - RejectChanges () : Add the row to index, if it was in deleted state and
  549. Update the index if in Modified State.
  550. - AcceptChanges () : Do not update the Indexes.
  551. - EndEdit () : Update the indexes even if BeginLoadData has been called
  552. on the table. Ideally, indexes should not be maintained during DataLoad,
  553. but this needs to handled in multiple places correctly. For now, just maintain
  554. the index to ensure correct operation.
  555. 2006-03-05 Senganal T <[email protected]>
  556. * DataSet.cs :
  557. - BeginInit (), EndInit () : Implemented methods
  558. - InitInProgress : Added.
  559. * DataTable.cs
  560. - EndInit () : Move the adding of columns and constraints
  561. to FinishInit.
  562. - FinishInit () : Added. Adds the Constraints and Columns
  563. to the collection.
  564. - InitInProgress : Added.
  565. * Constraint.cs
  566. - FinishInit () : Added. Virtual method
  567. - InitInProgress : Added. Virtual property
  568. * UniqueConstraint.cs
  569. * ForeignKeyConstraint.cs
  570. - FinishInit () : Added.
  571. - InitInProgress : Added.
  572. - DataColsNotValidated : Removed.
  573. * ConstraintCollection.cs
  574. - PostAddRange : Removed event
  575. - PostEndEdit () : Renamed to PostAddRange
  576. - Add () : Simplified the testing if constraint is initialized
  577. - AddRange () : Simplified initializing the constraints
  578. * DataTableCollection.cs
  579. - PostAddRange () : Added. Adds the tables to the collection
  580. * DataColumnColletion.cs
  581. - PostEndInit () : Renamed to PostAddRange.Also, add column to
  582. the collection only if not null.
  583. Added/Implemented methods for design time support. Renamed some methods for consistency
  584. in naming across classes for methods serving the same purpose.
  585. 2006-02-24 Senganal T <[email protected]>
  586. * UniqueConstraint.cs :
  587. - ChildConstraint : Added. Simplifies verifying if constraints are
  588. related.
  589. - CanRemoveFromCollection : Fixed the check to verify if constraints is
  590. linked to a ForeignKeyConstraint. Fixes #77630
  591. * ForeignKeyConstraint.cs :
  592. - _validateRemoveParentConstraint : Removed. Not used anymore
  593. - ParentConstraint : Added. Simplifies verifying if constraints are
  594. 2006-02-22 Senganal T <[email protected]>
  595. * DataRow.cs
  596. - RejectChanges : Do not remove Row from Indexes when state is Deleted.
  597. - CheckChildRows : When checking for the ChildRows, use the current value
  598. and not the original value.
  599. 2006-02-18 Atsushi Enomoto <[email protected]>
  600. * CustomDataClassGenerator.cs : Patch by Marek Habersack. xsd now
  601. outputs AutoIncrement, AutoIncrementSeed, AutoIncrementStep and
  602. ReadOnly properties. This fixes bug #77576.
  603. 2006-02-17 Chris Toshok <[email protected]>
  604. * System.Data/DataSet.cs, System.Data/DataView.cs,
  605. System.Data/ForeignKeyConstraint.cs,
  606. System.Data/DataViewManager.cs, System.Data/DataRow.cs,
  607. System.Data/DataSysDescriptionAttribute.cs,
  608. System.Data/UniqueConstraint.cs, System.Data/DataTable.cs,
  609. System.Data/DataRelation.cs: lots of attribute work, removing
  610. DataSysDescription atributes (and marking the class obsolete) for
  611. 2.0.
  612. 2006-02-17 Chris Toshok <[email protected]>
  613. * DataAdapterException.cs: remove this file.
  614. 2006-02-17 Chris Toshok <[email protected]>
  615. * DataTableReader.cs: Switch to the (bool) form of Dispose to
  616. override, as the no-arg form isn't virtual.
  617. * Constraint.cs: #ifdef out more DataSysDescriptions.
  618. * ConstraintException.cs: add ..ctor (string, Exception) for 2.0.
  619. 2006-02-17 Chris Toshok <[email protected]>
  620. * DataColumn.cs: #ifdef all the DataSysDescriptions !NET_2_0.
  621. * AdapterMappingException.cs: nuke this file.
  622. * IDbAsyncConnection.cs, IDbAsyncCommand.cs, IGetTypedData.cs,
  623. ISetTypedData.cs, IDataReader2.cs, IDataSources.cs,
  624. IDbExecutionContext.cs, IDataRecord2.cs, IDataUpdatableRecord.cs:
  625. remove these 2.0 files.
  626. 2006-02-17 Chris Toshok <[email protected]>
  627. * ConstraintCollection.cs: in 2.0, class is not serializable and
  628. is sealed. make all the "virtuals" #if !NET_2_0 as well.
  629. * Constraint.cs: not serializable in 2.0.
  630. * DataColumnCollection.cs: in 2.0, class is not serializable and
  631. is sealed. make all the "virtuals" #if !NET_2_0 as well.
  632. * DataRelationCollection.cs: not serializable in 2.0.
  633. * DataRelation.cs: not serializable in 2.0.
  634. * DataRowBuilder.cs: class is sealed in 2.0.
  635. * DataRowCollection.cs: in 2.0, class is not serialized and is
  636. sealed. Also, Add isn't virtual in 2.0 (as the class is sealed).
  637. * DataRow.cs: not serializable in 2.0.
  638. * DataSet.cs: remove some DataSysDescriptions from the 2.0 build,
  639. and s/GetDataReader/CreateDataReader.
  640. * DataTableCollection.cs: in 2.0, class is not serializable and is
  641. sealed. make all the "virtuals" #if !NET_2_0 as well.
  642. * DataTableReader.cs: remove VisibleFieldCount property.
  643. * DataViewSettingCollection.cs: not serializable in 2.0.
  644. * DataViewSetting.cs: not serializable in 2.0.
  645. * ForeignKeyConstraint.cs: serializable in 2.0.
  646. * OperationAbortedException.cs: class is sealed and serializable.
  647. * PropertyCollection.cs: serializable in 2.0.
  648. * StatementCompletedEventArgs.cs: class is sealed.
  649. * UniqueConstraint.cs: not serializable in 2.0.
  650. 2006-02-16 Senganal T <[email protected]>
  651. * XmlSchemaWriter :
  652. WriteDataSetElement : Add an annotation element if exists.
  653. WriteDataRelationAnnotation : New. Write a DataRelation as an annotation.
  654. WriteConstraints : Write ForeignKeyConstraint even when not associated with
  655. a DataRelation and add a "ConstraintOnly=true" attribute for such constraints.
  656. * XmlConstants.cs : Add a new constant - ConstraintOnly
  657. * XmlSchemaImporter.cs :
  658. - ConstraintStructure : Add field ,IsConstraintOnly, to distinguish if a foreignkeyconstraint
  659. is related to relation or not.
  660. - GenerateRelation : Handle the case when parentkey and childkey contain multiple columnnames.
  661. 2006-02-11 Senganal T <[email protected]>
  662. * UniqueConstraint.cs :
  663. - PostAddRange : Check PrimaryKey is not already set for the table
  664. * DataTable.cs :
  665. - PrimaryKey : follow ms.net behavior when BeginInit , EndInit is used.
  666. - Add new priamry key only when EndInit is called.
  667. - Incase of an error, retain old primarykey
  668. - EndInit :
  669. - Add Constraints after columns are added.
  670. - If both PrimaryKey Property and PrimaryKey Constraint are set,
  671. then the Constraint takes precedence.
  672. fixes bug #77404
  673. 2006-02-03 Senganal T <[email protected]>
  674. * DataTableCollection.cs :
  675. - Remove () : Check for invalid TableName
  676. - Add () : Verify the table doesn't belong to another dataset
  677. * DataView.cs :
  678. - CompleteLastAdded () : Do not raise ItemAdded Event as it is
  679. already raised in AddNew().
  680. * DataColumn.cs :
  681. - Expression : Verify that the Column names in the expression are valid
  682. - ResetCollectionInfo : Renamed to ResetColumnInfo
  683. * DataRow.cs :
  684. - RejectChanges () : Reorganized the code to do the Right thing.
  685. - Item : Dont check for detached and deleted rows as these are
  686. done elsewhere.
  687. * DataRowCollection.cs :
  688. - Add () : Check for null value
  689. * DataTable.cs :
  690. - PrimaryKey : Set AllowDBNull=false for all the key columns
  691. - ImportRow : Import the row only if it is not in Detached state. if in Deleted
  692. state, perform the validation when AcceptChanges/RejectChanges is called.
  693. * DataColumnCollection.cs :
  694. - Add : Validate the column expression before adding it to the collection.
  695. - GetColumnDependency () : New. Get the dependencies on the column
  696. - CanRemove : Move checks to GetColumnDependency
  697. - Clear () : Simplified code. Remove unncessary checks.Also, dont check Expression col.
  698. - IndexOf - Check argument.
  699. Overall , appropriate error msg's are thrown if Remove/Clear fails. Removed a few
  700. redundant checks performed and moved the common code to GetColumnDependency.
  701. 2006-01-31 Senganal T <[email protected]>
  702. * DataSet.cs : Modified CopyRelations ()
  703. - Added code to copy ForeignKeyConstraints. Fixes #77411.
  704. 2006-01-18 Boris Kirzner <[email protected]>
  705. * DataColumn.cs: added PropertyCchangedEvent handling.
  706. 2006-01-17 Senganal T <[email protected]>
  707. * DataRow.cs:
  708. ItemArray : Modified to raise RowInTableException only if
  709. the concerned row has been removed from the table.Fixes
  710. bug #77267
  711. 2006-01-16 Boris Kirzner <[email protected]>
  712. * DataTable.cs: Drop dependend indexes on column removal.
  713. 2006-01-16 Atsushi Enomoto <[email protected]>
  714. * CustomDataClassGenerator.cs :
  715. When a DataRelation connects the same table as parent and child,
  716. generate parent row property as BlahRowParent. Fixed bug #77248.
  717. 2006-01-10 Senganal T <[email protected]>
  718. * DataRowCollection.cs
  719. - Added ListChangedEvent to notify reset of the collection.
  720. * DataView.cs
  721. - Subscribes to the ListChangedEvent of DataRowCollection
  722. Fixes bug #77188
  723. 2006-01-09 Senganal T <[email protected]>
  724. * RelatedDataView.cs
  725. * DataColumn.cs
  726. - Resolving a name clash in IExpression
  727. 2006-01-06 Senganal T <[email protected]>
  728. * DataColumn.cs
  729. * DataColumnCollection.cs
  730. - Reset the Parameters of DataColumn to Default Values when
  731. column is removed from the Table's Collection
  732. 2006-01-03 Senganal T <[email protected]>
  733. * DataTable.cs :
  734. - ParseSortString() : Changed the way the sort string is parsed.
  735. Using a regex to parse the string.Fixes bug #77104
  736. 2005-12-12 Konstantin Triger <[email protected]>
  737. * DataRow.cs: Added index Updates.
  738. EndEdit() fixed to first update indices and then AssertConstraints
  739. based on those indices.
  740. Added Validate() and AssertConstraints() functions.
  741. * DataRowCollection.cs: Removed ValidateDataRowInternal().
  742. * DataTable: Fixed Clear().
  743. 2005-12-06 Atsushi Enomoto <[email protected]>
  744. * CustomDataClassGenerator.cs : (InitializeFields) handle AllowDBNull
  745. and DefaultValue as well. Patch by Marek Habersack (bug #76709).
  746. 2005-12-01 Miguel de Icaza <[email protected]>
  747. * DataSet.cs: Apply patch from Robert Jordan, to fix #76817
  748. 2005-11-26 Konstantin Triger <[email protected]>
  749. * ConflictOption.cs: TARGET_JVM include.
  750. 2005-11-11 Senganal T <[email protected]>
  751. * ConflictOption.cs (new file)
  752. - Added ConflictOption Enumeration
  753. * DataTableReader.cs
  754. * IDataRecord2.cs
  755. - GetProviderSpecificFieldType : Corrected the method name
  756. 2005-11-11 Senganal T <[email protected]>
  757. * DataSet.cs : Added the SchemaSerializationMode Property for NET_2_0
  758. compatibility.
  759. * SchemaSerializationMode.cs : Added SchemaSerializationMode Enumeration
  760. for NET_2_0 compatibility.
  761. Fixes bug #76517
  762. 2005-10-20 Atsushi Enomoto <[email protected]>
  763. * XmlSchemaWriter.cs : escape names in the schema with XmlConvert.
  764. Fixed bug #76480.
  765. 2005-10-14 Sureshkumar T <[email protected]>
  766. * DataView.cs: Correct multiple throwing of events. Patch from
  767. Marc Haisenko.
  768. (RowStateFilter): Fire ListChangedEvent.
  769. (ApplyDefaultSort): Fire ListChangedEvent.
  770. (CompleteLastAdded): call UpdateIndex to remove the row from rowCache.
  771. (IBindingList.Find): Implemented.
  772. 2005-10-11 Sureshkumar T <[email protected]>
  773. * DataView.cs (IBindingList): Implemented methods for IBindingList interface.
  774. 2005-09-26 Lluis Sanchez Gual <[email protected]>
  775. * DataSet.cs: In IXmlSerializable.GetSchema, return null again for
  776. untyped datasets. Fixes bug #76101.
  777. 2005-09-21 Boris Kirzner <[email protected]>
  778. * DataRow.cs: Fixes for index updating.
  779. * DataTable.cs:
  780. - Reset case-sensitive indexes also if their filter contains columns
  781. of type string.
  782. - Use GetIndex instead of FindIndex, so the indexes created in Select()
  783. are reused.
  784. * RelatedDataView.cs: implement IExpression.Equals() and GetHashCode().
  785. 2005-09-20 Sureshkumar T <[email protected]>
  786. * DataView.cs (Sort): Apply default Sorting Order if Sort property
  787. is reset to null. Sort property handles this. Patch from Marc.
  788. * DataTable.cs (ParseSortString): Patch from Marc Haisenko for
  789. allowing [ & ] in DataView.Sort string.
  790. 2005-09-01 Boris Kirzner <[email protected]>
  791. * System.Data/DataRowCollection.cs: indexes should be updated even if
  792. EnforceConstraints is false. Check for EnforceConstraints in
  793. ValidateDataRowInternal.
  794. 2005-08-08 Gert Driesen <[email protected]>
  795. * DataView.cs: Changed accessibility of dataTable, rowState and
  796. rowCache field to internal to fix public API. Assigned TypeConverter
  797. to Table property.
  798. * ForeignKeyConstraint.cs: IsConstraintViolated is now internal.
  799. * Constraint.cs: IsConstraintViolated is now internal.
  800. * UniqueConstraint.cs: IsConstraintViolated is now internal.
  801. 2005-08-05 Atsushi Enomoto <[email protected]>
  802. * XmlSchemaDataImporter.cs : When "dataset element" has identity
  803. constraints, then first reserve constraints room for them and then
  804. process elements, skipping pkey creation if there is already
  805. reserved one. Fixed bug #75711.
  806. 2005-08-05 Atsushi Enomoto <[email protected]>
  807. * XmlDataInferenceLoader.cs : in GetElementMappingType(), don't guess
  808. the same (QNamed) element again when it was already evaluated as
  809. not simple type. Fixed one part of bug #75711.
  810. 2005-08-02 Boris Kirzner <[email protected]>
  811. * XmlSchemaDataImporter.cs : Data relations should be processed after the
  812. keys, so no redundant constraints created while relations processing.
  813. 2005-07-25 Boris Kirzner <[email protected]>
  814. * FillOptions.cs, ConflictOptions.cs, UpdateOptions.cs:
  815. added ifdef TARGET_JVM.
  816. 2005-07-22 Sureshkumar T <[email protected]>
  817. * DataViewSettingCollection.cs, DataTableCollection.cs,
  818. DataSet.cs, DataView.cs, DataColumn.cs, ForeignKeyConstraint.cs,
  819. DataRelationCollection.cs, UniqueConstraint.cs, DataTable.cs,
  820. DataColumnCollection.cs, DataRelation.cs, DataSet.cs:
  821. - updated attributes & attribute descriptions to match with
  822. masterinfos.
  823. * DataView.cs: changed protected members
  824. rowstate,rowcache,dataTable to protected internal.
  825. * Constraint.cs, ForeignKeyConstraint.cs, UniqueConstraint.cs:
  826. changed InConstraintViolated to protected internal.
  827. * ConflictOptions.cs, UpdateOptions.cs, FillOptions.cs: enclosed
  828. with NET_2_0 define.
  829. 2005-07-21 Sureshkumar T <[email protected]>
  830. * ForeignKeyConstraint.cs:
  831. - IsConstraintViolated (): no matter what EnforceConstraints is,
  832. this function now honestly validates. It is upto the caller to run
  833. this or not.
  834. - AddToConstraintCollectionSetup (): AssertConstraint according to
  835. EnforceConstraints.
  836. 2005-07-21 Boris Kirzner <[email protected]>
  837. * ForeignKeyConstraint.cs - IsConstraintViolated() should check also for Table.EnforceConstraints.
  838. * DataTable.cs - EnforceConstraints becomes internal so it can be used by ForeignKeyConstraint.
  839. 2005-07-19 Sureshkumar T <[email protected]>
  840. * DataTable.cs - CopyConstraints (): copy constraints only if it
  841. does not exist.
  842. * DataSet.cs - Copy ():
  843. - use activator.CreateInstance to create a typed dataset.
  844. - copy tables if target does not exist, otherwise, just add rows.
  845. - add relation only if it does not exists.
  846. Typed datasets create the constraints & relations through
  847. constructors. Fixes bug #75211.
  848. 2005-07-14 Sureshkumar T <[email protected]>
  849. * DataView.cs: Patch from Marc Haisenko to throw descriptive error
  850. message when accessing Item, with invalid index.
  851. 2005-07-14 Sureshkumar T <[email protected]>
  852. reapplied patch from Marc Haisenko.
  853. * DataView.cs: Patch from Marc Haisenko that ensures that rowCache
  854. is never null.
  855. 2005-07-13 Sureshkumar T <[email protected]>
  856. * DataRelationCollection.cs: adding a relation with same set of
  857. parent columns & child columns, should not be allowed.
  858. 2005-07-08 Sureshkumar T <[email protected]>
  859. * DataTableReader.cs: GetSchemaTable: DataType column should be
  860. passed a type of Type.
  861. * DataRow.cs: Load : Fired necessary events.
  862. * DataTable.cs: LoadDataRow (object [], LoadOption): Fired
  863. necessary events.
  864. 2005-06-28 Sureshkumar T <[email protected]>
  865. * DataRow.cs: Delete (): if row is detached, do nothing.
  866. fixes bug #75388.
  867. 2005-06-22 Sureshkumar T <[email protected]>
  868. * DataRow.cs: Added method MergeValuesToRow copy merge two rows
  869. according to the merge rules.
  870. * MergeManager.cs: (MergeRow): use MergeValuesToRow
  871. API. CopyValuesToRow simply makes the target row same as source
  872. row. Rather, MergeValuesToRow merges with the target row according
  873. to the merge rules.
  874. 2005-06-19 Konstantin Triger <[email protected]>
  875. * DataSet.cs: Fixed ReadXml to work with IXmlSerializable
  876. 2005-06-17 Jordi Mas i Hernandez <[email protected]>
  877. * DataViewManager.cs: fixes exception and creates DataView
  878. 2005-06-15 Sureshkumar T <[email protected]>
  879. * DataRow.cs: CheckChildRows: cascade parent changes to child rows
  880. only if there is a change in columns of the fk constraint.
  881. 2005-06-14 Sureshkumar T <[email protected]>
  882. * DataSet.cs: GetChanges: if row is deleted, get parent rows based
  883. on original version. fixes bug #75227.
  884. 2005-06-13 Sureshkumar T <[email protected]>
  885. * DataRowCollection.cs: Find (keys, version): Added an overload to
  886. find keys matching given DataViewRowState filter. Used in
  887. DataSet.Merge and DataTable.LoadDataRow.
  888. * DataTable.cs: LoadDataRow (values, LoadOption): Use
  889. DataRowCollection.Find (object [], DataViewRowState) overload.
  890. * DataRow.cs:
  891. - CopyValuesToRow: Create target "records" out of loop. Records
  892. should be created once, not for each column. Dispose Unused target
  893. records.
  894. * MergeManager.cs:
  895. - MergeRow: Find rows with matching original records. If not,
  896. select with current values.
  897. - MergeRow: While adding new row, use NewNotInitializedRow.
  898. * ForeignKeyConstraint.cs: IsConstraintViolated: should not check
  899. if EnforceConstraints is false.
  900. 2005-06-10 Sureshkumar T <[email protected]>
  901. * DataRow.cs: CopyValuesToRow: if orginal == current, don't create
  902. a new current record.
  903. * DataSet.cs: GetChanges :Temporarily disable EnforceConstraints.
  904. * MergeManager.cs: Merge: Temporarily disable
  905. EnforceConstraints. Patch from [email protected] (George
  906. Barbarosie).
  907. 2005-06-09 Jordi Mas i Hernandez <[email protected]>
  908. * DataView.cs: fixes GetListName
  909. 2005-06-02 Atsushi Enomoto <[email protected]>
  910. * XmlSchemaConstants.cs,
  911. XmlSchemaDataImporter.cs,
  912. XmlSchemaWriter.cs : AutoIncrementStep support. Patch partly by
  913. George Barbarosie. Fixed bug #75121.
  914. * XmlSchemaMapper.cs : it is not used anymore, so just removed.
  915. 2005-05-31 Boris Kirzner <[email protected]>
  916. * DataRow.cs : SetParentRow on Detached row with no Default version throws an exception.
  917. 2005-05-29 Konstantin Triger <[email protected]>
  918. * This patch fixes #74813
  919. * DataView.cs: rework the CreateChildView to receive the index into the indexed row array, rowState became protected to be initialized from RelatedDataView
  920. * DataRowView.cs: movo the logic of creating the child view to the DataView
  921. * RelatedDataView.cs: perform correct init.
  922. 2005-05-25 Sureshkumar T <[email protected]>
  923. * DataTable.cs: Reworked DataTable.LoadDataRow method after
  924. regressions caused by Index redesign.
  925. * DataRow.cs: Load : reworked.
  926. 2005-05-25 Konstantin Triger <[email protected]>
  927. * ISafeDataRecord.cs: Added GetDateTimeSafe method, the interface was made derived from IDataRecord
  928. 2005-05-22 Konstantin Triger <[email protected]>
  929. * DataTable.cs, DataColumn.cs: in continuation to the previous fix - moving the common logic to 1 function and throwing the correct exception in any flow
  930. 2005-05-20 Sureshkumar T <[email protected]>
  931. * DataTable.cs: CreateRecord :value should be set to auto
  932. increment value or default value if the given value is null.
  933. 2005-05-16 Konstantin Triger <[email protected]>
  934. * DataTable.cs: In DataTable.LoadDataRow with LoadOption - reverting the search order back to Original -> Current (by Suresh request)
  935. 2005-05-16 Konstantin Triger <[email protected]>
  936. * DataRow.cs, DataTable.cs: code under net_2_0 changed to use the new interface
  937. * DataTable.cs: Added CompareRecords, which compares records in column order
  938. 2005-05-16 Sureshkumar T <[email protected]>
  939. * DataRow.cs:
  940. * DataTable.cs: quick fix to make build 2.0 profile (follow up for
  941. check in 2005-05-16). Merge with previous changes.
  942. 2005-05-11 Sureshkumar T <[email protected]>
  943. fix for "import row does not import deleted records"
  944. * UniqueConstraint.cs: Make a way to access value even from a
  945. deleted record. deleted records are added to the collection by
  946. ImportRow method.
  947. * DataRow.cs:
  948. - Added restriction-less methods GetValue to fetch a
  949. value even if it is in deleted state.
  950. - If a row is detached, don't try to delete it from indexes.
  951. - sanity check for record_index in CopyValuesToRow method
  952. 2005-05-05 Sureshkumar T <[email protected]>
  953. * DataTableReader.cs: Implemented Delete handler and move the
  954. current pointer accordingly.
  955. 2005-05-04 Sureshkumar T <[email protected]>
  956. * DataTableReader.cs: Added event handlers to make reader stable
  957. when the datasource is modified. Thanks to Umadevi for giving the
  958. review comments for this implementation.
  959. * DataTable.cs: Clear (): Raise TableCleared event.
  960. * DataTableClearEventArgs.cs: Args for DataTableClearEventHandler.
  961. * DataTableClearEventHandler.cs: Handler for DataTable.TableClear
  962. event.
  963. * DataRow.cs: AcceptChanges: raise row changing & row changed
  964. events.
  965. * DataRowCollection.cs: Clear : remove rows from indexes
  966. 2005-05-02 Atsushi Enomoto <[email protected]>
  967. * XmlSchemaDataImporter.cs : XmlSchemaParicle might be XmlSchemaAny.
  968. This fixes bug #74784.
  969. 2005-04-29 Sureshkumar T <[email protected]>
  970. * DataTableReader.cs: removed use of _first. throw if given index
  971. is out of range of columns. Copy DataTable [] to local array so
  972. that not to be disturbed.
  973. 2005-04-27 Sureshkumar T <[email protected]>
  974. * DataTableReader.cs: Implemented most of the TODO.
  975. 2005-04-22 Sureshkumar T <[email protected]>
  976. * LoadOption.cs: Changed the enums. Keeping old values for
  977. migration.
  978. * DataTable.cs: Implemented methods Load and its overloads. Also
  979. implemented LoadDataRow.
  980. * DataRowCollection.cs: Added a variation of the Find method to
  981. return a row even if it is of state Deleted. This is required for
  982. DataTable.LoadDataRow method.
  983. * DataRow.cs: Implemented internal helper method Load for loading
  984. values from an object array and given an LoadOption (2.0 feature).
  985. * DataRowAction.cs: Added few more enums for .net 2.0. Sorted
  986. alphabetically.
  987. 2005-05-16 Konstantin Triger <[email protected]>
  988. * UniqueConstraint.cs : IsNull check is relevant for rows having default row version.
  989. * DataTable.cs : The row should be validated when imported
  990. * DataRowCollection.cs : if the row does not contain Proposed neither Current version, it's irrelevant for validation
  991. 2005-04-26 Boris Kirzner <[email protected]>
  992. * UniqueConstraint.cs :
  993. - Add indication whenever the constraint belongs to collection.
  994. - Calculation of IsPrimaryKey simplified.
  995. - If constraint is based on single column, the column becomes unique.
  996. - Use boolean IsConstraintViolated() instead of AssertConstraint().
  997. - Use Index.Duplicates to proper exception message formatting.
  998. - AssertConstraint(DataRow) changed to suite new indexes interface.
  999. - Added CanRemoveFromCollection method.
  1000. - Contains() method renamed to IsColumnContained().
  1001. * RelatedDataView.cs : added new class.
  1002. * MergeManager.cs :
  1003. - Reset indexes after merge.
  1004. - Add new tables when row array is merged into dataset.
  1005. - Clean proposed record in MergeRow.
  1006. - Inherit nesting on creating new relations in target data set.
  1007. - Avoid double loop on constraints collection.
  1008. * Locale.cs : added new class.
  1009. * ISafeDataRecord.cs : added new interface.
  1010. * Index.cs : commented out. Index implementation moved to System.Data.Common.
  1011. * ForeignKeyConstraint.cs :
  1012. - No more use of childColumnsExtended since new indexes allow duplicate records.
  1013. - Constraints can not be created on expression columns.
  1014. - Removed unnecessary delegation.
  1015. - Use boolean IsConstraintViolated() instead of AssertConstraint().
  1016. - Use proper exception message formatting.
  1017. - Contains() method renamed to IsColumnContained().
  1018. * DataViewRowState.cs : use enum members to simplify notation.
  1019. * MergeManager.cs : implemented RelationCollectionChanged().
  1020. * DataView.cs : new implementation.
  1021. * DataTableCollection.cs :
  1022. - Added boundary check in indexer.
  1023. - More accurate handling in AddRange().
  1024. - Raise event in Remove().
  1025. * DataTable.cs :
  1026. - Hold primary key as constraint.
  1027. - Added accurate handling of DefaultView.
  1028. - Hold DataRowBuilder per table.
  1029. - Proper exception messages if enforce Constraints is violated.
  1030. - If there is no rows, Compute() returns DBNull.
  1031. - Use DataRow properties instead of private members.
  1032. - CopyProperties() fixed.
  1033. - Raise proper events in EndInit().
  1034. - Proper order of violation checks in EndLoadData().
  1035. - Create array of rows using NewRowArray().
  1036. - ImportRow handles rows according to their versions.
  1037. - LoadDataRow make use of records (instead of raw object array).
  1038. - Added and implemented LoadDataRow() that gets IDataRecord as a parameter (used in Fill)
  1039. - Select() uses indexes filtering and sorting ability (instead of "loop-throw-sort" approach).
  1040. - Removed redundant RowSorter and Sortable column classes.
  1041. - ParseSortString() fixed to threat bracketed column names.
  1042. - Table holds collection of property descriptors.
  1043. * DataSet.cs :
  1044. - Reset table case sensitive indexes on CaseSensitive change.
  1045. - EnforceConstraints update logic moved to internal method (used by DataTable).
  1046. - InAddChangedRow first add row and than copy values for proper handling of default values.
  1047. * DataRowView.cs :
  1048. - Changed private member names to suite name convention.
  1049. - CancelEdit() fixed.
  1050. - CreateChildView() delegates to DataView.
  1051. - IsNew fixed.
  1052. - Proper exception messages in indexers.
  1053. - RowVersion uses DataView.
  1054. - GetProperties() delegates to corresponding table if needed.
  1055. * DataRowCollection.cs :
  1056. - Common Add() logic moved to AddInternal() (used also by DataTable).
  1057. - Removed redundant check from Contains().
  1058. - Dalegate Find() calls when possible.
  1059. - Remove() fixed.
  1060. - RomoveAt() delegates to Remove().
  1061. - Optimized constraints check in row validation.
  1062. * DataRelationPropertyDescriptor.cs : added new class.
  1063. * DataRelationCollection.cs :
  1064. - Indexers fixed.
  1065. - Fixed order of actions in AddCore().
  1066. - RemoveCore() also delegates to base.
  1067. - Add relation to dataset also in AddCore().
  1068. - Remove relation from dataset also in RemoveCore().
  1069. - InTransition hold a data relation so we can properly identify the "in transition" state.
  1070. - Added threat of parent and child table s property descriptors in Add().
  1071. - Common Add() logic moved to AddCore().
  1072. - Clear() fixed.
  1073. - Remove() threats "in transition" state properly.
  1074. - Remove methods delegate to single implementation.
  1075. * DataColumnPropertyDescriptior.cs :
  1076. - Added new constructor.
  1077. - Commented out redundant method.
  1078. * DataColumnCollection.cs :
  1079. - Boundary check in indexer.
  1080. - RegisterName and UnregisterName become internal (used also by DataColumn).
  1081. - Fixed AddRange().
  1082. - Fixed CanRemove().
  1083. - Rethrow correct exception in Clear();
  1084. - Change in collection resets parent table property descriptors.
  1085. - Added PostEndEdit() helper method (used by DataTable).
  1086. * DataColumn.cs :
  1087. - Private member names changed to suite name convention.
  1088. - Created method for CanAutoIncrement() logic.
  1089. - Proper handling of column name update.
  1090. - Proper exception messages on expression update.
  1091. - Proper namespace handling (delegates to table when needed).
  1092. - Removed redundant check in Unique update.
  1093. - Implemented internal Clone().
  1094. - GetParentRalation() and GetChildRelation() become private.
  1095. * Constraint.cs :
  1096. - Added abstract methods (implemented in UniqueConstraint and ForeignKeyConstraint).
  1097. - Simplified index update.
  1098. * ConstraintCollection.cs :
  1099. - Use Locale instead of CaseSensitive in column names comparison.
  1100. - Removed #ifdef
  1101. - Rethrow correct exception type in Add().
  1102. - Proper update of table primary key in Add().
  1103. - Delegate CanRemove() to constraint.
  1104. - Remove table primary key in Clear();
  1105. - Delegate "can remove" check to constraint in Remove().
  1106. - Removed unnecessary methods and properties.
  1107. * DataRow.cs :
  1108. - RowSate becomes calculated property.
  1109. - Use properties instead of private members where possible.
  1110. - Fixed indexer.
  1111. - Fixed order of actions in ItemArray update.
  1112. - Fixed DetachRow().
  1113. - Added ImportRecord() method.
  1114. - Removed redundant SetValuesFromDataRecord().
  1115. - Fixed IndexFromVersion().
  1116. - Added VersionFromIndex() method. Returns row version the passed record index corresponds to.
  1117. - Fixed AcceptChanges().
  1118. - Fixed creating proposed version in BeginEdit();
  1119. - Added record disposal in Delete().
  1120. - Fixed CheckChildRows().
  1121. - EndEdit() fixed. Checks for readonly. Uses straight flow instead of "try and fix if fail" approach.
  1122. - GetChildRows() and GetPrarentRows() rewrited. Use records and indexes for rows lookup.
  1123. - GetColumnError() delegates to another implementation.
  1124. - HasVersion() fixed.
  1125. - RejectCahnges checks on child rows before passing through.
  1126. - SetParentRow() fixed. Create relation collection if needed. Use typed data container value copy.
  1127. - CopyErrors() logic moved to separate method (used also by DataTable).
  1128. * ExpressionElement.cs : added new class.
  1129. * Res.cs : added new class.
  1130. 2005-04-20 Jordi Mas i Hernandez <[email protected]>
  1131. * DataViewManager.cs: implements TypedList.GetListName used in SWF
  1132. 2005-04-19 Atsushi Enomoto <[email protected]>
  1133. * DataRowView.cs : indexer should access to DataRow with proper
  1134. DataRowVersion. Fixed bug #74650.
  1135. 2005-04-18 Sureshkumar T <[email protected]>
  1136. * DataRow.cs: if there are no mapping fields, fill with default
  1137. value.
  1138. 2005-04-17 Atsushi Enomoto <[email protected]>
  1139. * DataView.cs : Delete() should not try to remove row twice.
  1140. Fixed bug #74631.
  1141. 2005-04-13 Atsushi Enomoto <[email protected]>
  1142. * DataTable.cs : Use GetRowType() for the base of the returning array
  1143. type of Select(). Fix by Gerhard Rittweger.
  1144. * CustomDataClassGenerator.cs : Fixed slightly harmless wrong code.
  1145. 2005-04-13 Atsushi Enomoto <[email protected]>
  1146. * CustomDataClassGenerator.cs : custom relation was not added to
  1147. Relations property. The second entry of bug #69276 was fixed.
  1148. Patch by Daniel Rodriguez.
  1149. 2005-04-07 Lluis Sanchez Gual <[email protected]>
  1150. * DataRowCollection.cs: Fix the signature of the Add method
  1151. for NET_2_0.
  1152. 2005-03-16 Atsushi Enomoto <[email protected]>
  1153. * DataRow.cs : on importing row, it was copying data from incorrect
  1154. DataRow. This fixes bug #73288.
  1155. 2005-03-07 Jackson Harper <[email protected]>
  1156. * DataViewManagerListItemTypeDescriptor.cs: Implement missing
  1157. features. These are needed for System.Windows.Forms databinding.
  1158. 2005-02-25 Atsushi Enomoto <[email protected]>
  1159. * DataColumn.cs : setting negative value on MaxLength of SimpleContent
  1160. column is still valid.
  1161. 2005-02-15 Atsushi Enomoto <[email protected]>
  1162. * XmlSchemaWriter.cs : new file for outputting XmlSchema.
  1163. * DataSet.cs : removed rewritten code in XmlSchemaWriter.
  1164. * XmlConstants.cs : added UseCurrentCulture constant.
  1165. * DataTable.cs :
  1166. Use new Xml Schema writer.
  1167. Use XmlSchemaDataImporter as we use in DataSet.
  1168. 2005-02-10 Atsushi Enomoto <[email protected]>
  1169. * DataView.cs, DataRowView.cs : Fixed bug #72421. CreateChildView()
  1170. should target only child rows.
  1171. 2005-02-03 Atsushi Enomoto <[email protected]>
  1172. * DataViewManager.cs: misuse of ReadStartElement(string).
  1173. * DataRowView.cs : removed some MonoTODO.
  1174. 2005-02-02 Sureshkumar T <[email protected]>
  1175. Ankit Jain <[email protected]>
  1176. * DataColumn.cs: throw exception if the column is part of a
  1177. relationship, when chaning the data type. Added methods
  1178. "GetParentRelation ()" and "GetChildRelation ()" get the relation
  1179. which contains the current column
  1180. * DataRelation.cs: Added method "Contains (DataColumn)" to check
  1181. whether the relation contains the given column.
  1182. fixes nunit failure: DataRelationTest.InvalidConstraintException2.
  1183. 2005-02-02 Sureshkumar T <[email protected]>
  1184. * DataColumnCollection.cs: implemented todo item "check for
  1185. constraints" when removing columns from table.
  1186. * DataRowCollection.cs: Clear (): don't have to throw child key
  1187. constraint exception when the child table does not have any
  1188. rows. safe to remove parent rows.
  1189. * UniqueConstraint.cs: added method "Contains (DataColumn)" to
  1190. check whether a column is part of UniqueConstraint.
  1191. * ForeignKeyConstraint.cs: added method "Contains (DataColumn,
  1192. lookInParent)" to check whether a column is part of foreignkey.
  1193. fixes nunit failure: DataTableTest.ClearTest ()
  1194. 2005-02-02 Sureshkumar T <[email protected]>
  1195. * ForeignKeyConstraint.cs: validating columns: move checking
  1196. "tables are of same dataset" before "checking column types".
  1197. fixes nunit failure: ForeignKeyConstraint.CtorExceptions.
  1198. 2005-02-02 Atsushi Enomoto <[email protected]>
  1199. * DataViewManager.cs : let's just use StringWriter instead of
  1200. XmlTextWriter (to avoid empty tag string mismatch annoyance.)
  1201. * DataView.cs : implemented BeginInit() and EndInit(). Don't update
  1202. rows during init phase until EndInit() is invoked. During init phase,
  1203. just hold properties such as Sort that affects on rows.
  1204. 2005-02-02 Atsushi Enomoto <[email protected]>
  1205. * DataTableCollection.cs : (RemoveAt) just use IndexOutOfRangeException.
  1206. 2005-02-02 Atsushi Enomoto <[email protected]>
  1207. * DataView.cs : DataRowView.EndEdit() raises ItemMoved event.
  1208. set_Table clears Sort and RowFilter.
  1209. 2005-02-02 Atsushi Enomoto <[email protected]>
  1210. * DataView.cs :
  1211. - Clear() should clear AddNew cache.
  1212. - Open() invokes Reset().
  1213. - ConstraintCollectionChanged() itself does not invoke OnListChanged().
  1214. - Reset() does not Open, Close and Update Index.
  1215. - UpdateIndex() can be invoked even if it has no table.
  1216. - Reset event is invoked always after actual query to table.
  1217. - set_Table should raise PropertyDescriptorChanged event.
  1218. 2005-02-02 Atsushi Enomoto <[email protected]>
  1219. * DataView.cs : ColumnCollectionChanged() is the event invoker (i.e.
  1220. when overriden, no column change events are fired).
  1221. 2005-02-02 Atsushi Enomoto <[email protected]>
  1222. * DataView.cs : CancelEditRowView() and DeleteRowView() was incorrectly
  1223. checking target tables. They also should raise events if required.
  1224. 2005-02-02 Atsushi Enomoto <[email protected]>
  1225. * DataView.cs : simplify code with UnsortedList.
  1226. 2005-02-01 Atsushi Enomoto <[email protected]>
  1227. * DataView.cs : Mostly reimplemented.
  1228. - UpdateIndex() is invoked only when it is required (results in
  1229. significant performance improvement).
  1230. - Use SortedList and wrapper OptionalSortedList which switches
  1231. between SortedList (with Sort) and UnsortedList (without Sort).
  1232. - DataView itself now contains two collections for rowviews:
  1233. Table rows based pool and AddNew() based cache. Consider those
  1234. two collections in every members.
  1235. - Reset() does not clear rows. Just invokes UpdateIndex().
  1236. - Hook RowDeleting, ColumnChanging and ColumnChanged events in table
  1237. which is required to handle state changes.
  1238. - Reimplemented Find() and FindRows() because of internal changes.
  1239. 2005-02-01 Atsushi Enomoto <[email protected]>
  1240. * DataTable.cs : Fixed row comparer. Even if every of the sort target
  1241. columns are identical for two rows, they should not be regarded as
  1242. the same unless they are Object.ReferenceEquals.
  1243. 2005-02-01 Atsushi Enomoto <[email protected]>
  1244. * DataRowCollection.cs : on adding a row, should raise
  1245. ChangingDataRow() as well as ChangedDataRow().
  1246. 2005-01-31 Sureshkumar T <[email protected]>
  1247. * DataRow.cs: SetParentRow (): use relation.ParentColumns &
  1248. relation.ChildColumns instead of relation.ChildKeyConstraint.*
  1249. because createConstrains flag may be false when creating data
  1250. relations. Hack along with Ankit Jain.
  1251. 2005-01-31 Atsushi Enomoto <[email protected]>
  1252. * DataView.cs :some interface implementations.
  1253. 2005-01-28 Atsushi Enomoto <[email protected]>
  1254. * DataView.cs : Add to table only when the row is not in the table.
  1255. 2005-01-28 Atsushi Enomoto <[email protected]>
  1256. * DataView.cs : implemented FindRows() (btw we should not use
  1257. DataTable since there are detached rows by AddNew().)
  1258. 2005-01-28 Atsushi Enomoto <[email protected]>
  1259. * DataView.cs :
  1260. Code cleanup: privatify some members, remove unused methods.
  1261. Some event-based invocation methods should not raise NotImplemented.
  1262. 2005-01-28 Atsushi Enomoto <[email protected]>
  1263. * DataSet.cs : ReadXml() became closer to MS behavior, being hacky.
  1264. 2005-01-28 Atsushi Enomoto <[email protected]>
  1265. * XmlSchemaDataImporter.cs : empty element is not regarded as a column.
  1266. 2005-01-28 Atsushi Enomoto <[email protected]>
  1267. * UniqueConstraint.cs : mostly reverted the previous patch + check
  1268. IsPrimaryKey before validation.
  1269. 2005-01-28 Atsushi Enomoto <[email protected]>
  1270. * DataView.cs : Fixed duplicate insertion to Hashtable.
  1271. * UniqueConstraint.cs : Unique constrained pair of columns could be
  1272. nullable.
  1273. 2005-01-27 Atsushi Enomoto <[email protected]>
  1274. * DataView.cs :
  1275. Don't do anything for Sort/ApplyDefaultSort/RowFilter/RowStateFilter
  1276. when the same value is being set.
  1277. Examined UpdateIndex() and marked FIXME where MS does not invoke it.
  1278. Removed unused OnColumnChanged().
  1279. Now store rowViewPool and reuse DataRowView objects.
  1280. Optimized UpdateIndex() - avoid ArrayList. Avoid Haashtable.Rehash().
  1281. 2005-01-27 Atsushi Enomoto <[email protected]>
  1282. * DataViewSettings.cs : no MonoTODO anymore.
  1283. * DataViewManager.cs : pass itself to new DataView() (new ctor).
  1284. * DataRowView.cs : GetHashCode() returns its Row's hash.
  1285. * DataTablePropertyDescriptor.cs : use new ctor().
  1286. * DataView.cs : added new ctor()s that accept DataViewManager.
  1287. 2005-01-27 Atsushi Enomoto <[email protected]>
  1288. * DataView.cs, DataRowView.cs : AddNew() should not add the row to table
  1289. (it is still detached). So handle those rows differntly.
  1290. CancelEdit(), EndEdit() and Delete() propagates those events to
  1291. DataView (and handle row collection).
  1292. Eliminate "throw new Exception()".
  1293. Don't catch all the exception thrown in ListChanged event.
  1294. * DataTable.cs : made RowSorter as internal and use it in DataView.
  1295. no need to pass DataRow[] to .ctor().
  1296. 2005-01-27 Atsushi Enomoto <[email protected]>
  1297. * DataTable.cs : don't create DefaultView unless it is required. It
  1298. significantly improves performance. (i.e. DataView perf. is sick ;-)
  1299. 2005-01-27 Atsushi Enomoto <[email protected]>
  1300. * DataViewSetting.cs,
  1301. DataViewSettingCollection.cs,
  1302. DataViewManager.cs : implemented basic members.
  1303. 2005-01-26 Atsushi Enomoto <[email protected]>
  1304. * Node.cs, DataColumnPropertyDescriptor.cs, DataTable.cs :
  1305. Eliminate "throw new Exception".
  1306. 2005-01-25 Atsushi Enomoto <[email protected]>
  1307. * DataRow.cs : (set_Item) RowNotInTableExeption check should be done
  1308. regardless of index existence.
  1309. 2005-01-25 Atsushi Enomoto <[email protected]>
  1310. * DataTable.cs : use new IExpression.EvalBoolean() to avoid extraneous
  1311. boxing.
  1312. 2005-01-25 Sureshkumar T <[email protected]>
  1313. * DataTable.cs: ImportRow :Do not add to rows collection if the
  1314. import row is in detached state.
  1315. 2005-01-25 Sureshkumar T <[email protected]>
  1316. * DataRow.cs: CopyValuesToRow : set the column value with the
  1317. default version of the given row.
  1318. * DataTable.cs: ImportRow: Copy values before adding row.
  1319. * DataSet.cs: AddChangedRow: Add the row to the table after
  1320. copying values.
  1321. Fixes bug #67317. Patch by Ankit Jain.
  1322. 2005-01-25 Atsushi Enomoto <[email protected]>
  1323. * DataRowView.cs : Fixed IsEdit to reflect correct status of DataRow.
  1324. * DataRow.cs : Expose editing status internally.
  1325. 2005-01-25 Atsushi Enomoto <[email protected]>
  1326. * DataView.cs : missing attributes.
  1327. 2005-01-24 Atsushi Enomoto <[email protected]>
  1328. * DataRowView.cs : implemented CreateChildView().
  1329. 2005-01-24 Atsushi Enomoto <[email protected]>
  1330. * DataTable.cs, DataView.cs :
  1331. Optimized DataView to compile only once RowFilter and Sort when
  1332. those properties are set. To make it possible, extracted
  1333. SortableColumn out of DataTable and added internal DataTable.Select()
  1334. that accepts precompiled IExpression and SortableColumns[].
  1335. 2005-01-24 Atsushi Enomoto <[email protected]>
  1336. * DataColumn.cs : set_MaxLength is not allowed when it is mapped to
  1337. SimpleContent. (However, it is weird but it never fails when we set
  1338. ColumnMapping = MappingType.SimpleContent when we fhave MaxLength.)
  1339. 2005-01-21 Atsushi Enomoto <[email protected]>
  1340. * DataRow.cs : more Current -> Default fixes. Check if it should throw
  1341. VersionNotFoundException. Patch by Ankit Jain.
  1342. 2005-01-21 Atsushi Enomoto <[email protected]>
  1343. * DataRow.cs : Default selects the right version for the current
  1344. state of the row. Current is not always available. Also change
  1345. that for GetParentRow(). Patch by Ankit Jain.
  1346. 2005-01-21 Atsushi Enomoto <[email protected]>
  1347. * DataTable.cs : CopyColumn() should copy AutoIncrement after
  1348. DefaultValue, or it will raise an error in some cases.
  1349. 2005-01-20 Atsushi Enomoto <[email protected]>
  1350. * ConstraintCollection.cs : Add() should throw ArgumentException when
  1351. the argument constraint fails validation.
  1352. DataTable.cs : set_PrimaryKey should throw ArgumentException when
  1353. the argument contains constraints which fail validation.
  1354. 2005-01-19 Sureshkumar T <[email protected]>
  1355. * DataRelationCollection.cs:
  1356. Method Remove : Donot throw exception if DataRelation argument is
  1357. null in DataRelationCollection.Remove method.
  1358. Method RemoveAt : Exception should be IndexOutOfRangeException if
  1359. row index is not in list range.
  1360. Fixes nunit failures DataRelationCollection.Remove and
  1361. DataRelationCollection.RemoveAt.
  1362. 2005-01-19 Sureshkumar T <[email protected]>
  1363. * ConstraintCollection.cs: Donot throw exception if constraints
  1364. are null in AddRange method. Check for null before using the
  1365. argument.
  1366. fixes bug #69381.
  1367. 2004-01-19 Atsushi Enomoto <[email protected]>
  1368. * XmlDataInferenceLoader.cs,
  1369. XmlDataReader.cs : Check if the XmlReader (node) represents DataSet
  1370. or a table, reusing code block in XmlDataInferenceLoader.
  1371. This fixes bug #60118.
  1372. 2004-01-19 Atsushi Enomoto <[email protected]>
  1373. * XmlDiffLoader.cs : Ankit Jain <[email protected]> has a conflicting
  1374. patches and some good catches. Some attributes should be skipped,
  1375. and loaded value must be typed.
  1376. 2004-01-19 Atsushi Enomoto <[email protected]>
  1377. * XmlConstants.cs,
  1378. XmlDataInferenceLoader.cs,
  1379. XmlDataReader.cs : use common const for http://www.w3.org/2000/xmlns/.
  1380. * XmlDiffLoader.cs : It was not handling attributes. Fixed bug #70961.
  1381. 2005-01-18 Sureshkumar T <[email protected]>
  1382. Fix for bug #66838. This patch is submitted by "Ankit Jain"
  1383. <[email protected]> and refactored.
  1384. * DataRow.cs: Allows to set a parent row even if the row is in
  1385. detached state.
  1386. * DataRelation.cs: method "UpdateConstraints" is added to check
  1387. and create missing keys when adding a relation. This is refactored
  1388. approach from DataRelationCollection.Add method.
  1389. * DataRelationCollection.cs: AddCore methods of all relation types
  1390. are synchronized. A Check for existing constraints is
  1391. done. Relation is added to the list only if all checks are passed.
  1392. 2004-01-18 Atsushi Enomoto <[email protected]>
  1393. * DataColumnCollection.cs : Clear() throws ArgumentException that
  1394. wraps thrown innerException.
  1395. * XmlSchemaDataImporter.cs : removed FIXMEs.
  1396. 2004-01-12 Atsushi Enomoto <[email protected]>
  1397. * DataSet.cs : When serializing DataTable, BuildSchema() is passed
  1398. null relation collections.
  1399. Quick fix for XmlSerializer deserialization. It does not require
  1400. XML Schema included.
  1401. 2004-01-11 Atsushi Enomoto <[email protected]>
  1402. * DataSet.cs,
  1403. CustomDataClassGenerator.cs :
  1404. In DataSet class, IXmlSerializable.GetSchema() returns null.
  1405. In strongly-typed class, it returns schema.
  1406. 2004-01-07 Atsushi Enomoto <[email protected]>
  1407. * XmlDataInferenceLoader.cs : test driver class should be excluded.
  1408. 2004-12-01 Miguel de Icaza <[email protected]>
  1409. * DataView.cs: Patch from Marc Haisenko that ensures that rowCache
  1410. is never null.
  1411. 2004-11-10 Atsushi Enomoto <[email protected]>
  1412. * CustomDataClassGenerator.cs : generated foreign key constraint
  1413. construction code was creating empty child columns and thus it
  1414. was invalid. This fixes bug #69276 (patch by Martin Voelkle).
  1415. 2004-11-02 Atsushi Enomoto <[email protected]>
  1416. * CustomDataClassGenerator.cs : custom DataTable ctor should call
  1417. InitializeFields(), and those DataColumns created by that method
  1418. should take data type. This should fix bug #68972.
  1419. 2004-10-15 Atsushi Enomoto <[email protected]>
  1420. * DataSet.cs : Also clear UnhandledAttributes ArrayList before
  1421. generating next attribute column schema. This fixes bug #68432.
  1422. 2004-10-14 Umadevi S <[email protected]>
  1423. * DataTable.cs : Corrected the Clone method to use Activator.CreateInstance so that the
  1424. correct subclass is returned. This fixes bug #67631
  1425. 2004-10-14 Umadevi S <[email protected]>
  1426. * DataSet.cs : Corrected the Clone method to use Activator.CreateInstance so that the
  1427. correct subclass is returned. This fixes bug #67627
  1428. 2004-10-13 Atsushi Enomoto <[email protected]>
  1429. * DataSet.cs : clear UnhandledAttributes ArrayList before generating
  1430. next element column schema. This fixes bug #68256.
  1431. 2004-10-12 Atsushi Enomoto <[email protected]>
  1432. * DataSet.cs : now xs:schema contains xmlns="".
  1433. This fixes bug #68008.
  1434. 2004-10-12 Atsushi Enomoto <[email protected]>
  1435. * DataSet.cs : DBNull attribute column should not be written as
  1436. empty attribute. This fixes bug #68007.
  1437. 2004-10-12 Atsushi Enomoto <[email protected]>
  1438. * DataSet.cs, XmlConstant.cs, XmlSchemaDataImporter.cs:
  1439. DataColumn.ReadOnly was not handled. This fixes bug #68005.
  1440. Attribute defaultValue was not handled too.
  1441. 2004-10-07 Atsushi Enomoto <[email protected]>
  1442. * DataSet.cs :
  1443. - When AllowDBNull is false on attribute DataColumn, its schema
  1444. should contain use="required". This fixes bug #66792.
  1445. - If MaxLength is set on attribute DataColumn, the mapped schema
  1446. type should contain maxLength facet. This fixes bug #66793.
  1447. 2004-10-04 Atsushi Enomoto <[email protected]>
  1448. * DataSet.cs : For a row, when a relation is not nested, then it is
  1449. still output target since it won't be written as a child of its
  1450. parent. It fixes bug #66379.
  1451. 2004-10-03 Atsushi Enomoto <[email protected]>
  1452. * DataSet.cs : Attribute constraint field XPath must be written as
  1453. @blah. This fixes bug #66366.
  1454. 2004-09-28 Umadevi S <[email protected]>
  1455. * DataRow.cs - checked for Enforceconstraints, while using indices to search for related rows
  1456. 2004-09-24 Sureshkumar T <[email protected]>
  1457. * DataSet.cs : Don't check constraints for dataset clear
  1458. * DataRowCollection.cs : check for EnforceConstraints flag
  1459. before checking foriegn key constraints in Clear method
  1460. * DataTable.cs : Redundant checking removed in Clear method as it is
  1461. checked in DataRowCollection.Clear method.
  1462. 2004-09-19 Sureshkumar T <[email protected]>
  1463. * DataRow.cs : while deserialization of dataset, adding a current row precedes the original row.
  1464. hence, adding a row cache is necessary if the original row happens to be current.
  1465. fixed bug #63097
  1466. 2004-08-23 Martin Baulig <[email protected]>
  1467. * XmlDataInferenceLoader.cs (Driver): Make this class internal,
  1468. not public.
  1469. 2004-08-18 Umadevi S <[email protected]>
  1470. * DataView.cs - Completed most of the event handling.
  1471. Thanks to Punit Todi <[email protected]> for implementing most of it.
  1472. Thanks to Boris Kirzner <[email protected]> for commenting and suggesting changes to the implementation.
  1473. * DataTable.cs - Changed Access modifiers of class/methods since it was used by DataView.
  1474. 2004-08-06 Atsushi Enomoto <[email protected]>
  1475. * DataSet.cs : DataSet's ExtendedProperties were not XmlConverted.
  1476. 2004-08-05 Atsushi Enomoto <[email protected]>
  1477. * XmlConstants.cs : Added constants for "msprop" support.
  1478. * DataSet.cs : ExtendedProperties should be written in the schema.
  1479. This fixes bug #61233.
  1480. 2004-07-27 Atsushi Enomoto <[email protected]>
  1481. * DataSet.cs : on serialization to XmlWriter, XmlConvert should be
  1482. used. There were also some culture dependency problems to write int.
  1483. 2004-06-27 Atsushi Enomoto <[email protected]>
  1484. * XmlDataInferenceLoader.cs : It was not always filling relation
  1485. child table information correctly. This fixes bug #60742.
  1486. 2004-06-23 Umadevi S <[email protected]>
  1487. * UniqueConstraint.cs :changed a ifdef true to ifdef NET_1_1
  1488. 2004-06-22 Atsushi Enomoto <[email protected]>
  1489. * DataSet.cs : Fixed ReadXml(). When ReadMode is ReadSchema and the
  1490. schema is inside the document element (as created in XmlWriteMode
  1491. .WriteSchema), it should read schema from that non-document element.
  1492. This fixes one case reported in bug #60470.
  1493. 2004-06-20 Atsushi Enomoto <[email protected]>
  1494. * XmlDataInferenceLoader.cs : Kindly reject xml schema document as a
  1495. inference target. For bug #60470. (MS does not support schema
  1496. document inference and results in unconsistent dataset structure.)
  1497. 2004-06-20 Atsushi Enomoto <[email protected]>
  1498. * DataTableCollection.cs : reset the table's DataSet to null when
  1499. removing a table from this collection.
  1500. * DataTable.cs : When Namespace is not specified explicitly, its
  1501. Namespace property reflects DataSet's Namespace if exist.
  1502. This fixes bug #60469.
  1503. 2004-06-18 Gert Driesen <[email protected]>
  1504. * DBConcurrentcyException.cs: CRLF to LF
  1505. * DataViewSetting.cs: CRLF to LF
  1506. 2004-06-18 Gert Driesen <[email protected]>
  1507. * DataViewSetting.cs: renamed fields to match MS.NET
  1508. 2004-06-18 Gert Driesen <[email protected]>
  1509. * DBConcurrencyException.cs: fixed serialization compatibility with
  1510. MS.NET
  1511. 2004-06-17 Boris Kirzner <[email protected]>
  1512. * ChangeLog : Fix for misspelled words.
  1513. 2004-06-17 Boris Kirzner <[email protected]>
  1514. * DataRowCollection.cs : Removed onColumnRemoved since it is not in use.
  1515. 2004-06-17 Boris Kirzner <[email protected]>
  1516. * DataTable.cs :
  1517. - Table stores default values for columns in special default values row.
  1518. It is allocated once (in NewRow).
  1519. - DataTable.Copy rewrited. It works with uninitialized rows for better perfomance.
  1520. - OnRemoveColumn has nothing to perform by now.
  1521. 2004-06-17 Boris Kirzner <[email protected]>
  1522. * DataRow.cs :
  1523. - Changed access of original, current and proposed indexes to internal.
  1524. - ColumnErrors reviewed : now column errors stored in ArrayList and allocated on demand only.
  1525. - Added new DataRow constructor that creates uninitialized DataRow (used in DataTable.Copy).
  1526. - Use DataContainer.CopyValue and default values row for faster set of default values in row.
  1527. - SetColumnValue become CheckValue. Now it does not changes the value, but only checks for its correctness.
  1528. Care about Null and DBNull values is now in DataContainer.
  1529. - Use DataColumn.AutoIncrementValue and GetInt64 for faster set of autoincrement value.
  1530. - Use Datacontainer.CopyValue and default values row to speed up CheckChildRows.
  1531. - Fix in CopyState : clone column errors.
  1532. - Removed CollectionChanged and onColumnRemoved since we are not using both of them anymore.
  1533. 2004-06-17 Boris Kirzner <[email protected]>
  1534. * DataColumnCollection.cs :
  1535. - Fix : Add() now delegates to Add(DataColumn).
  1536. - autoIncrement list holds DataColumn objects, and not just column names.
  1537. 2004-06-17 Boris Kirzner <[email protected]>
  1538. * DataColumn.cs :
  1539. - AutoIncrementValue fixes. Now AutoIncrement uses DataContainer.GetInt64 to avoid boxing.
  1540. - DefaultValue fixes. Default value from now on is also stored in special record in
  1541. DataTable, so we're able to set default value for the column faster (typed).
  1542. 2004-06-15 Atsushi Enomoto <[email protected]>
  1543. * DataSet.cs : children of non-root rows were not properly written.
  1544. Fixed bug #53959.
  1545. 2004-06-10 Umadevi S <[email protected]>
  1546. * DataRelation.cs - Constructor
  1547. - The datatypes of the parentcolumn(s) and the childcolumn(s) should match
  1548. 2004-06-06 Atsushi Enomoto <[email protected]>
  1549. * XmlSchemaDataImporter.cs : We should fill Namespace for DataTable.
  1550. 2004-06-04 Gert Driesen <[email protected]>
  1551. * Constraint.cs: marked methods internal to fix public API
  1552. * ConstraintCollection.cs: to fix public API, use
  1553. DataTable.fInitInProgress to check whether initialization
  1554. of DataTable is in progress
  1555. * DataColumn.cs: added stubs for missing methods
  1556. * DataRowBuilder.cs: marked Table property internal to
  1557. fix public API
  1558. * DataSet.cs: removed extra empty destructor, marked
  1559. OnMergeFailed internal to fix public API
  1560. * DataTable.cs: use fInitInProgress field to hold init
  1561. status, to match MS.NET
  1562. * DataView.cs: added missing attributes on IsOpen
  1563. 2004-06-03 Atsushi Enomoto <[email protected]>
  1564. * DataSet.cs : Use NameTable.Get() before calling LookupNamespace()
  1565. in XmlNamespaceManager.
  1566. 2004-06-03 Atsushi Enomoto <[email protected]>
  1567. * DataSet.cs : complex table content child was not properly added
  1568. when it is the only one child in the parent table. Fixed bug #53959.
  1569. 2004-06-02 Gert Driesen <[email protected]>
  1570. * DataTableTypeConverter.cs: added
  1571. * DataView.cs: added missing attribute on Table property
  1572. * DataViewManager.cs: moved attribute to correct property
  1573. * UniqueConstraint.cs: removed extra ReadOnly attribute from
  1574. IsPrimaryKey property
  1575. 2004-06-01 Atsushi Enomoto <[email protected]>
  1576. * DataRow.cs : ColumnsChanged event is not required in .ctor().
  1577. 2004-06-01 Atsushi Enomoto <[email protected]>
  1578. * XmlDataReader.cs : type change is required before setting value
  1579. string to row item.
  1580. 2004-05-31 Atsushi Enomoto <[email protected]>
  1581. * DataSet.cs : Loop-break of the last fix was incorrect.
  1582. 2004-05-31 Atsushi Enomoto <[email protected]>
  1583. * DataSet.cs : When a row has no parent row but the table has parent
  1584. relation(s), that row had been always ignored.
  1585. 2004-05-31 Atsushi Enomoto <[email protected]>
  1586. * XmlDataInferenceLoader.cs : Fixed GetMappedTable() that incorrectly
  1587. rejected same-named tables in different hierarchy. Thanks to Boris.
  1588. 2004-05-31 Atsushi Enomoto <[email protected]>
  1589. * XmlDiffLoader.cs : Added some Skip() that is required not to go to
  1590. infinite loop. Thanks to Boris for this fix.
  1591. 2004-05-31 Atsushi Enomoto <[email protected]>
  1592. * XmlDataInferenceLoader.cs : XmlSchema elements should not be infered.
  1593. Thanks to Boris for this fix.
  1594. 2004-05-30 Atsushi Enomoto <[email protected]>
  1595. * DataTable.cs : serialization .ctor() should use XmlReadMode.DiffGram
  1596. for ReadXml(). Thanks to Boris.
  1597. 2004-05-27 Boris Kirzner <[email protected]>
  1598. * DataRow.cs :
  1599. - CheckReadOnlyStatus : use typed (and faster comparing).
  1600. - EndEdit : bug fix - do not dispose record if it holds original version.
  1601. - SetValuesFromDataRecord : Take care about autoincrement columns.
  1602. 2004-05-27 Atsushi Enomoto <[email protected]>
  1603. * MergeManager.cs : don't output debug message to Console.
  1604. 2004-05-27 Atsushi Enomoto <[email protected]>
  1605. * XmlDataInferenceLoader.cs : Namespace are not imported to the table
  1606. structure. Thanks to Boris Kirzner for the fix.
  1607. 2004-05-27 Umadevi S <[email protected]>
  1608. * DataRelationCollection.cs - fixed nunit test errors
  1609. 2004-05-27 Umadevi S <[email protected]>
  1610. * DataTableCollection.cs - fixed nunit test errors
  1611. 2004-05-21 Atsushi Enomoto <[email protected]>
  1612. * DataColumnCollection.cs : NullReferenceException was thrown when
  1613. the table was not found.
  1614. * DataRowCollection.cs :
  1615. Find() just returns null for null value under MS.NET 1.1.
  1616. RemoveAt() should also avoid to call AcceptChanges() like Remove().
  1617. * UniqueConstraint.cs : in AssertConstraint() throw ConstraintException
  1618. directly under MS.NET (for nunit test).
  1619. 2004-05-21 Atsushi Enomoto <[email protected]>
  1620. * XmlSchemaDataImporter.cs : Setting startindex in LastIndexOf()
  1621. caused problem on qualified name to get schema Field name.
  1622. 2004-05-21 Atsushi Enomoto <[email protected]>
  1623. * XmlDataReader.cs : Now data reader is namespace aware in all places.
  1624. When table's namespace is different, it entered to infinite loop.
  1625. 2004-05-19 Boris Kirzner <[email protected]>
  1626. * MergeManager.cs : AdjustSchema now updates by reference new created table,
  1627. so in Merge you do not need to lookup for it (were unable to do this for unnamed tables).
  1628. Code styling.
  1629. 2004-05-19 Boris Kirzner <[email protected]>
  1630. * DataColumn.cs : In set_Item[int] - if autoincrement, adjust next autoincrement value.
  1631. * DataColumnCollection.cs : fixed parantethes.
  1632. * DataRow.cs :
  1633. - AcceptChanges : do nothing if row state is unchanged.
  1634. - GetChildRows, GetParentRows : bug fix (use correct index).
  1635. * DataRowCollection.cs : bug fix (compare all row's values).
  1636. * DataTable.cs : bug fix (use correct row version).
  1637. 2004-05-20 Atsushi Enomoto <[email protected]>
  1638. * XmlSchemaDataImporter.cs : xs:positiveInteger is mapped to ulong.
  1639. When content type is Mixed, text column is not required (it is
  1640. required only when the complex type has no particle).
  1641. "Repeated element" column is also created (considering maxOccurs=0
  1642. and complex content extension).
  1643. 2004-05-20 Atsushi Enomoto <[email protected]>
  1644. * XmlSchemaDataImporter.cs : XmlSchemaGroupBase was not handled
  1645. properly.
  1646. 2004-05-20 Atsushi Enomoto <[email protected]>
  1647. * XmlSchemaDataImporter.cs : Removed unused code and extra MonoTODO.
  1648. Fixed relation inference to consider attribute XPath.
  1649. 2004-05-19 Atsushi Enomoto <[email protected]>
  1650. * DataColumn.cs : Fixed set_Item[int]. Convert.ToInt64(DBNull.Value)
  1651. always fails.
  1652. 2004-05-19 Boris Kirzner <[email protected]>
  1653. * DataColumn.cs - removed default member attribute.
  1654. 2004-05-19 Boris Kirzner <[email protected]>
  1655. * DataColumn.cs,
  1656. DataColumnChangeEventArgs.cs,
  1657. DataColumnCollection.cs,
  1658. DataRow.cs,
  1659. DataRowCollection.cs,
  1660. DataTable.cs,
  1661. Index.cs : Data storage in the row is redesigned. Now data is stored in
  1662. typed containers inside DataColumn. Row holds its versions as indexes inside
  1663. each of data container, accessed through the row that holds it.
  1664. 2004-05-19 Boris Kirzner <[email protected]>
  1665. * UniqueConstraint.cs - added comment.
  1666. 2004-05-19 Atsushi Enomoto <[email protected]>
  1667. * XmlDataInferenceLoader.cs : Don't add already-existing DataTable to
  1668. DataSet.
  1669. 2004-05-17 Atsushi Enomoto <[email protected]>
  1670. * DataSet.cs,
  1671. XmlDataInferenceLoader.cs,
  1672. XmlDataReader.cs,
  1673. XmlSchemaDataImporter.cs : XmlDecode every local name to read and
  1674. XmlEncode every local name to write. This should fix bug #58268.
  1675. 2004-05-17 Atsushi Enomoto <[email protected]>
  1676. * DataSet.cs : Implemented ignored namespaces in InferXmlSchema().
  1677. Supported repeated elements. Removed MonoTODOs.
  1678. * XmlDataInferenceLoader.cs : Design change to support ignored
  1679. namespace and repeated elements.
  1680. * XmlSchemaDataImporter.cs : Added mapping support classes.
  1681. 2004-05-15 Atsushi Enomoto <[email protected]>
  1682. * CustomDataClassGenerator.cs :
  1683. Added property parent "[foo]Row" and children "Get[foo]Row" support
  1684. for custom DataRow classes.
  1685. Fixed DataColumn property accessibility (public --> internal).
  1686. 2004-05-14 Atsushi Enomoto <[email protected]>
  1687. * CustomDataClassGenerator.cs :
  1688. - Put classes inside custom DataSet class.
  1689. - Added automatic DataRelation creation support.
  1690. - Added Constraints creation support. That is done separate from
  1691. relations, since they might be independently created.
  1692. - Added non-MS public DataRelation fields.
  1693. - Removed extraneous "DataRelation type generation" code.
  1694. - Fixed custom_dataset.Initialize() not to create "c" field that
  1695. was created more than once.
  1696. - Implemented AddxxxRow() that takes parameters for every column.
  1697. 2004-05-14 Atsushi Enomoto <[email protected]>
  1698. * XmlSchemaDataImporter.cs : When primary key is used more than once,
  1699. DataRelation borked because of empty parent column name.
  1700. 2004-05-14 Atsushi Enomoto <[email protected]>
  1701. * XmlSchemaDataImporter.cs : When Creating constraints with related
  1702. to DataRelation creation, also set PrimaryKey to the parent table.
  1703. 2004-05-14 Atsushi Enomoto <[email protected]>
  1704. * XmlSchemaDataImporter.cs :
  1705. Design change to add indirect table and relation structures.
  1706. Support for "relation" annotation for local element.
  1707. Support for repeatable simple element column (maxOccurs > 1).
  1708. Fixed handling of Nested property on DataRelation (for globally
  1709. annotated relation, Nested is false).
  1710. 2004-05-13 Atsushi Enomoto <[email protected]>
  1711. * DataRow.cs : Added DataElement property to avoid storing every row-
  1712. element mapping. It stored even for nodes that should be removed.
  1713. 2004-05-13 Umadevi S <[email protected]>
  1714. * RelationshipConverter.cs - Stubbed this class
  1715. * DataRelation.cs - added TypeConveterAttribute
  1716. 2004-05-13 Umadevi S <[email protected]>
  1717. * DataColumnCollection.cs - Added ResDescriptionAttribute
  1718. * DataRelation.cs - Added TypeConverterAttribute
  1719. * DataRelationCollection.cs - Added DefaultPropertyAttribute
  1720. * DataRowView.cs - Added GetHashCode method with a TODO tag
  1721. * DataSet.cs - Added DesignerAttribute
  1722. * DataView.cs - Added DesignerAttribute
  1723. * DataViewManager.cs - Added DesignerAttribute
  1724. * DataViewSetting.cs - Added TypeConverterAttribute
  1725. 2004-05-12 Atsushi Enomoto <[email protected]>
  1726. * DataRow.cs : Added XmlDataElement initialization code.
  1727. 2004-05-11 Atsushi Enomoto <[email protected]>
  1728. * XmlDataInferenceLoader.cs :
  1729. It now requires XmlDocument as input. Improved identification of
  1730. DataSet element. Removed extra lines.
  1731. Moved boresome design notes to bottom of the source and
  1732. added standalone runnable driver (not included on build).
  1733. * DataSet.cs :
  1734. Update with related to the change above.
  1735. WriteXml() should call Flush() after writing. This fixes bug #58327.
  1736. * XmlSchemaDataImporter.cs :
  1737. Improved indentification of DataSet element.
  1738. 2004-05-11 Gert Driesen ([email protected])
  1739. * DataTable: marked initStatus enum internal
  1740. 2004-05-09 Gert Driesen ([email protected])
  1741. * DataTable.cs: removed TypeConverterAttribute, marked RowsExist
  1742. methods internal
  1743. * DataRowView.cs: removed extra Error property
  1744. * DataRow.cs: reduced accessibility of CollectionChanged method
  1745. to private
  1746. * DataColumnPropertyDescriptor.cs: made class internal
  1747. * DataColumn.cs: removed extra TypeConvertorAttribute
  1748. * ConstrainCollection.cs: marked PostEndInit method internal
  1749. 2004-05-07 Atsushi Enomoto <[email protected]>
  1750. * DataSet.cs :
  1751. In WriteXmlSchema(), when complex type contains simple type content
  1752. attributes must not added to XmlSchemaComplexType directly. It
  1753. causes schema compilation error.
  1754. DataRelation should not be output when related columns are hidden.
  1755. 2004-05-07 Atsushi Enomoto <[email protected]>
  1756. * XmlDataInferenceReader.cs : Added. It does InferXmlSchema() (it is
  1757. also expected to do ReadXml(), but I will remove that feature and
  1758. support column reordering).
  1759. * XmlSchemaDataImporter.cs : Always initialize dataset name.
  1760. Always set Nested and primary key for parent table.
  1761. * XmlDataReader.cs : Now it is used.
  1762. Top level element might not match to dataset name nor any table
  1763. name, but still possible to read content tables.
  1764. Handle empty element correctly in some places.
  1765. Handle Fragment mode (read up XmlReader to the end).
  1766. * DataSet.cs : Modified InferXmlSchema() and ReadXml() to use
  1767. XmlDataInferenceLoader and XmlDataReader.
  1768. 2004-05-06 Atsushi Enomoto <[email protected]>
  1769. * DataSet.cs :
  1770. Eliminated CRLF injection.
  1771. More clear message in Clear().
  1772. Updates reflecting XmlSchemaDataImporter change.
  1773. Added duplicate check for XmlSerializerNamespaces in BuildSchema().
  1774. Don't use xmlns attribute for UnhandledAttributes (its not mandatory
  1775. but that depends on different behavior from ms.net).
  1776. Set locale also for DataTable.
  1777. Add xs:element only when target namespace matches to the
  1778. element's namespace. Otherwise, add xs:import for external namespace.
  1779. Put xs:sequence for dataset element's particle _only when_ actual
  1780. contents exist.
  1781. 2004-05-06 Atsushi Enomoto <[email protected]>
  1782. * XmlDataReader.cs : Added. This class will work better when our
  1783. schema inference and schema read engine gets improved. (It contains
  1784. standalone testable Driver class.)
  1785. 2004-05-06 Atsushi Enomoto <[email protected]>
  1786. * ForeignKeyConstraint.cs : Check step change. Existence then column
  1787. validity. just for tests.
  1788. * XmlSchemaDataImporter.cs : code simplification. reduced extraneous
  1789. fields.
  1790. 2004-05-05 Atsushi Enomoto <[email protected]>
  1791. * DataSet.cs : Ignore empty content only when output type is diffgram.
  1792. 2004-05-05 Atsushi Enomoto <[email protected]>
  1793. * CustomDataClassGenerator.cs : Modified that DataSet contains each
  1794. DataTable field so that each table property can access them directly.
  1795. (plus, modified standalone code driver code: shouldn't affect)
  1796. 2004-05-05 Boris Kirzner <[email protected]>
  1797. * DataView.cs , DataRowView.cs : Added implementation to basic methods and properties.
  1798. 2004-05-05 Atsushi Enomoto <[email protected]>
  1799. * XmlSchemaDataImporter.cs :
  1800. SimpleContent column support.
  1801. Annotated relation support.
  1802. Top-level element is counted only when its type is complex.
  1803. xs:anyType is no longer treated as complex type.
  1804. dataset existence is mandatory now.
  1805. Improved DataType and DefaultValue support.
  1806. Attribute namespace is properly handled now.
  1807. Prohibited attribute is now treated as hidden column.
  1808. Reject list or union simple type.
  1809. Still incomplete 1) to read relationship in some cases, 2) to
  1810. determine whether an element is dataset or table, 3) thus to
  1811. exclude extraneous column, 4) to remove extraneous *_Id column.
  1812. 2004-05-05 Atsushi Enomoto <[email protected]>
  1813. * DataTable.cs :
  1814. We had better reuse DataSet's ReadXmlSchema() and ReadXml() in
  1815. serialization .ctor() (thus schema read/inference should be easier).
  1816. DataRowSorter should consider Table's Locale.
  1817. 2004-05-05 Atsushi Enomoto <[email protected]>
  1818. * DataColumnCollection.cs : We already had AutoIncrementValue(), so
  1819. use it instead of duplicating logic.
  1820. 2004-05-05 Atsushi Enomoto <[email protected]>
  1821. * ConstraintCollection.cs :
  1822. Use Table.CaseSensitive and Table.Locale to compare strings.
  1823. Duplicate constraint name exception does not occur under .NET 1.1.
  1824. 2004-05-04 Lluis Sanchez Gual <[email protected]>
  1825. * XmlSchemaDataImporter.cs: Added little type check.
  1826. 2004-05-04 Lluis Sanchez Gual <[email protected]>
  1827. * DataSet.cs: Implemented support for runtime serialization. Fixed support
  1828. for xml serialization.
  1829. * XmlDiffLoader.cs: Skip diffgram element when it is empty.
  1830. 2004-04-30 Umadevi S <[email protected]>
  1831. * DataColumnCollection.cs : Fixed nunit test errors, removed TODOs
  1832. * DataTableCollection.cs : Tested and removed TODO
  1833. * TypedDataSetGeneratorException.cs : Fixed a couple of TODOs
  1834. 2004-04-29 Atsushi Enomoto <[email protected]>
  1835. * DataRow.cs : My previous patch unintentionally reverted Boris patch.
  1836. 2004-04-29 Boris Kirzner <[email protected]>
  1837. * UniqueConstraint.cs : Constraint columns becaomes unique after adding constraint ifand only if
  1838. constraint is defined on single column.
  1839. 2004-04-29 Atsushi Enomoto <[email protected]>
  1840. * DataRowCollection.cs : .NET 1.1 throws InvalidConstaintException,
  1841. not ArgumentException (maybe changed after 1.1).
  1842. 2004-04-29 Atsushi Enomoto <[email protected]>
  1843. * DataRow.cs : When Column was added and it was AutoIncrement column,
  1844. it extended the item object array incorrectly.
  1845. (Plus tiny comment and incorrect indentation fix.)
  1846. 2004-04-29 Boris Kirzner <[email protected]>
  1847. * MergeManager.cs : added ( incomplete yet ) support for merging DataSet schema.
  1848. 2004-04-29 Boris Kirzner <[email protected]>
  1849. * DataRow.cs : Bug fix in CopyValuesToRow().
  1850. 2004-04-29 Boris Kirzner <[email protected]>
  1851. * UniqueConstraint.cs : There is no reason to mark constraint's columns as unique, because
  1852. each of the columns should not be unique, but only all the constraint's columns together.
  1853. 2004-04-28 Boris Kirzner <[email protected]>
  1854. * DataRow.cs :
  1855. - Perfomance fixes:
  1856. - Added using of list of autoIncrement columns
  1857. - SetColumnValue receives also DataColumn to avoid duplicate lookup in DatacolumnCollection
  1858. - Fix in CheckNullConstraints
  1859. - Fix in this[] and HasVersion() : when evaluating an expression deleted rows values can be accessed.
  1860. - Fix in SetColumnValue() , added CanAccess() method to avoid case of accessing internal array values berore it actually allocated.
  1861. - Added onColumnRemoved() method to threat column removal accurately.
  1862. * DataRowCollection.cs :
  1863. - Added using of DataRow._nullConstraintViolation (for perfomance fix in EndLoadData())
  1864. - Added method onColumnRemoved() - calls each row's onColumnRemoved() (to ensure column removal is treated accurately)
  1865. * DataTable.cs :
  1866. - Call DataRowCollection.onColumnRemoved() in OnRemoveColumn() (to ensure column removal is treated accurately)
  1867. * DataColumnCollection.cs :
  1868. - Perfomance fixes :
  1869. - collection holds a list of its autoIncrement columns (avoids unnesessary lookup through whole collection)
  1870. - collection holds mapping from column names to DataColumn objects (avoids lookup through whole collection).
  1871. - automatic creation of column names rewrited (bug fixes + perfomance improvement)
  1872. * DataColumn.cs :
  1873. - Uses autoincrement list of a table
  1874. 2004-04-27 Atsushi Enomoto <[email protected]>
  1875. * XmlDataLoader.cs : Even when it should ignore schema, it was
  1876. infering schema.
  1877. * XmlSchemaDataImporter.cs : DataRelation creation support.
  1878. Improved "DataSet" element handing. When attributes are on the
  1879. element, it is not a "DataSet" element.
  1880. Fixed parent key column name.
  1881. Unique name creation is not required. Just raise an error.
  1882. Fill facet also for attribute types.
  1883. 2004-04-27 Atsushi Enomoto <[email protected]>
  1884. * DataRow.cs : Null check for CheckReadOnlyStatus() and
  1885. CheckNullConstraints(), with some coding guideline fixes.
  1886. Type check should be done by Type instance comparison.
  1887. 2004-04-27 Atsushi Enomoto <[email protected]>
  1888. * DataColumnCollection.cs : When add a column to the collection, fill
  1889. auto-increment column.
  1890. 2004-04-26 Boris Kirzner <[email protected]>
  1891. * DataColumn.cs : Small perfomance fix (avoid unnesessary string concatenation).
  1892. 2004-04-26 Atsushi Enomoto <[email protected]>
  1893. * CustomDataClassGenerator.cs : Added.
  1894. * TypedDataSetGenerator.cs : Implemented Generate().
  1895. Changed GenerateIdName() to call CustomDataClassGenerator.MakeSafeName
  1896. * XmlSchemaDataImporter.cs : Table Locale should be supplied.
  1897. 2004-04-25 Boris Kirzner <[email protected]>
  1898. * DataTable.cs : Small perfomance fix (avoid unnesessary string concatenation).
  1899. 2004-04-25 Boris Kirzner <[email protected]>
  1900. * Constraint.cs : Small perfomance fix (avoid unnesessary string concatenation).
  1901. 2004-04-23 Umadevi S ([email protected])
  1902. * DataRow.cs: Checked BeginEdit,EndEdit,CancelEdit and Delete methods
  1903. - Added error handling to the above methods
  1904. 2004-04-22 Atsushi Enomoto <[email protected]>
  1905. * DataSet.cs : Data should be read when mode is IgnoreSchema (well,
  1906. the support is incomplete yet).
  1907. * XmlDataLoader.cs :
  1908. Reverted ReadModeSchema() argument change. XmlReadMode would be
  1909. useful to handle IgnoreSchema.
  1910. Don't overwrite DataSetName when mode is not such kind.
  1911. Set Prefix and Namespace as well as DataSetName.
  1912. AllowDBNull looks set false by default for element column.
  1913. Set unique constraint as primary key when infering the table schema.
  1914. 2004-04-21 Atsushi Enomoto <[email protected]>
  1915. * DataSet.cs :
  1916. Never set null string for Prefix and Namespace.
  1917. In InferXmlSchema() when null XmlReader is passed, just do nothing.
  1918. In WriteXmlSchema(string), earlier try block.
  1919. In BuildSchema(), try to add serialization namespaces for each
  1920. namespaces in DataSet/DataTable/DataColumn.
  1921. Removed namespace argument from WriteColumnAsElement() and don't
  1922. overwrite when namespace is "". This fixes bug #57330.
  1923. * DataColumn.cs : For Namespace and Prefix, never set null.
  1924. 2004-04-21 Boris Kirzner <[email protected]>
  1925. * XmlSchemaMapper.cs : Check for not null unique constraint in ReadXmlSchemaKeyref()
  1926. before creating and adding foreign key constraint and relation.
  1927. 2004-04-21 Boris Kirzner <[email protected]>
  1928. * MergeManager.cs : In AdjustSchema() source table clone should be added
  1929. and not the table itself.
  1930. 2004-04-21 Boris Kirzner <[email protected]>
  1931. * DataSet.cs :
  1932. - CaseSensitive : Additional fix (removed unnesessary assignment).
  1933. - CopyProperties : Do not try to copy ExtendedProperties if the collection is empty.
  1934. 2004-04-21 Boris Kirzner <[email protected]>
  1935. * DataTable.cs : Ensure that DataSet property is not null before using it in Clear().
  1936. 2004-04-20 Boris Kirzner <[email protected]>
  1937. * DataTable.cs :
  1938. - EndLoadData() : perfomance fix in case of null constraint violation
  1939. during data load (also in DataRow.cs).
  1940. - CaseSensitive : If DataTable belongs to DataSet it should always use
  1941. DataSet.CaseSensitive untill explicitly changed.
  1942. - CopyProperties() : do not try to copy ExtendedProperties if the collection is empty.
  1943. * DataRow.cs :
  1944. - Pefromance fix in case of null constraint violation
  1945. during data load (also in DataTable.cs).
  1946. - CollectionChanged() : use correct column number after new DataColumn was added
  1947. (differs in case some DataColumn was previosly removed).
  1948. - EndEdit() - throw away proposed values only after CheckChildRows() complete.
  1949. 2004-04-20 Boris Kirzner <[email protected]>
  1950. * DataColumnCollection.cs : Since unique constraint is added now
  1951. in DataColumn.SetTable() the additional creation of constraint in
  1952. DataColumnCollection.Add() is redundant and causes exception - fixed.
  1953. 2004-04-19 Atsushi Enomoto <[email protected]>
  1954. * XmlDataLoader.cs : Added "never add data rows" mode.
  1955. Removed unused code. However, it is temporary fixes to unify
  1956. ReadXml() and InferXmlSchema().
  1957. * DataSet.cs : Implemented InferXmlSchema(), though it is incomplete.
  1958. I'll create another XmlDataLoader since there are many problems
  1959. such that 1) it is too waste to read the entire xml into an
  1960. XmlDocument, 2) it does not handle attributes correctly, and 3) it
  1961. must handle "ignored namespaces".
  1962. 2004-04-19 Atsushi Enomoto <[email protected]>
  1963. * Added XmlSchemaDataImporter.cs (new schema reader).
  1964. * DataSet.cs : Use XmlSchemaDataImporter (right now for DataSet only)
  1965. for ReadXmlSchema().
  1966. Let schema reading work to ReadXmlSchema().
  1967. Don't return ReadSchema when argument read mode was DiffGram.
  1968. 2004-04-15 Umadevi S ([email protected])
  1969. * Updated Clone/Copy methods in DataSet along with Testcase
  1970. * ForeignKeyConstraint.cs - special ctor implemented
  1971. Logic : ParentTable in the ctor - Since only name is given (not the DataTable object), we cannot associate any DataTable or DataSet right now. So, only possible way is to do it when AddRange() is called. The ParentTable is searched in the DataSet to which the calling DataTable belongs. And make the calling DataTable as ChildTable. In the PostAddRange() method check is addedd to perform the assignment of parent and child data columns once the information becomes available (When AddRange is called).
  1972. * Changes in ConstraintCollection.cs for the above
  1973. Add (Constraint) - A check is performed to see if the constraint is ForeignKeyConstraint and whether data columns are validated. If no, whether it is called with AddRange(), If no, an Exception is thrown. AddRange() - PostAddRange() is called on the ForeignKeyConstraint object with the "table" as argument. Thanks to Deepak for the patch.
  1974. 2004-04-15 Atsushi Enomoto <[email protected]>
  1975. * XmlSchemaMapper.cs : set parent key and foreign key info to
  1976. DataRelation when reading refkey constraints.
  1977. Supply constraint name for fkey.
  1978. 2004-04-15 Atsushi Enomoto <[email protected]>
  1979. * XmlDataLoader.cs : Don't overwrite existing DataSetName. When read
  1980. mode is Auto, just ignore the schema if there is already schema info.
  1981. * DataSet.cs : Similarly ignore schema info for XmlReadMode = Auto.
  1982. 2004-04-14 Atsushi Enomoto <[email protected]>
  1983. * DataSet.cs :
  1984. - In MS output, XML declaration looks to have standalone decl (yes).
  1985. - ReadXml(reader) just calls to ReadXml(reader, XmlReadMode.Auto)
  1986. - ReadXml(reader, mode)
  1987. 1) return originally specified mode, instead of (always) Auto.
  1988. 2) Check empty reader.
  1989. 3) Check diffgram schema and content separately.
  1990. 4) When diffgram exists, remaining (the same-level) contents
  1991. won't be consumed.
  1992. 5) Similar fact should be applied, but somewhat different.
  1993. InferSchema and IgnoreSchema just skips, Fragment reads both
  1994. schema and content, others just reads schema.
  1995. - Removed unused code.
  1996. * XmlDataLoader.cs :
  1997. - Read() should skip in some ReadMode.
  1998. - Don't compare schema element name as case-insensitive (well,
  1999. should schemas be checked here?)
  2000. - Avoided BuildDocument() not to create confusing DataSet
  2001. document element.
  2002. - Don't add any tables when reader has single element.
  2003. * XmlDiffLoader.cs :
  2004. When target table was not found, MS.NET doesn't raise an error.
  2005. * XmlSchemaMapper.cs :
  2006. When XmlSchema.Read() left xml reader at </xs:schema>, read once.
  2007. 2004-04-13 Atsushi Enomoto <[email protected]>
  2008. * DataSet.cs :
  2009. - InferXmlSchema(): Throw explicit NotImplementedException now.
  2010. - Don't put XML declaration everywhere. Write just for filename arg.
  2011. - xmlns="" should not be written. Maybe WebService problem is
  2012. because default namespace is overwritten. This patch will keep
  2013. the WS problem away and actually fixes some unit tests (i.e. use
  2014. explicit String.Empty for null namespace in WriteStartElement()).
  2015. - MoveToContent() should always be called, not only when
  2016. LocalName="xml". It will ignore prolog (DTD, PI, comment etc.).
  2017. - Even XmlReadMode is DiffGram, reader might not be "diffgram"
  2018. element. As to MSDN, diffgram does not contain schema.
  2019. 2004-04-13 Gonzalo Paniagua Javier <[email protected]>
  2020. * DataTable.cs: made _initStatus private so that System.Data is CLS
  2021. compliant.
  2022. 2004-04-13 Umadevi S <[email protected]>
  2023. * UniqueConstraint.cs:
  2024. * ConstraintCollection.cs:
  2025. * DataTable.cs:
  2026. - Implemented a Constructor for UniqueConstraint.cs
  2027. - Used EndInit on DataTable to call a delegate which adds the
  2028. constraints passed to the most recent call of AddRange().Used
  2029. AddRange() on ConstraintCollection to check whether
  2030. DataTable.BeginInit has occurred. If yes, save the argument
  2031. constraint collection passed, then return. If no, Check whether the
  2032. constraints are of type UniqueConstraint and initialized with the
  2033. special constructor If yes Initialized the table property of this
  2034. UniqueConstraint object with table assosciated with the current
  2035. instance of ConstraintCollection class.
  2036. 2004-04-07 Marek Safar <[email protected]>
  2037. * Constraint.cs: changed ClsCompliant to CLSCompliant, build fix.
  2038. 2004-04-06 Gonzalo Paniagua Javier <[email protected]>
  2039. * Constraint.cs:
  2040. * DataColumnCollection.cs:
  2041. * DataRelationCollection.cs:
  2042. * DataRowCollection.cs:
  2043. * DataTableCollection.cs:
  2044. * InternalDataCollectionBase.cs:
  2045. * Node.cs: CLS compliance for System.Data. Patch by Gert Driesen.
  2046. Fixes bug #56557.
  2047. 2004-04-05 Jackson Harper <[email protected]>
  2048. * DataTable.cs: Add rows to the row list if there is no filter.
  2049. 2004-03-31 Juraj Skripsky <[email protected]>
  2050. * DataColumn.cs : Setting Caption to null sets it to the empty string
  2051. (ms.net behaviour, testcase is in DataColumnTest).
  2052. * DataRow.cs : Evaluate DataColumn.Expression when such a column's
  2053. value is requested.
  2054. 2004-03-30 Lluis Sanchez Gual <[email protected]>
  2055. * DataColumn.cs: In Expression setter, set the expression member even if
  2056. it is an empty string.
  2057. * DataSet.cs: Support serialization of byte[] columns.
  2058. * XmlDataLoader.cs: Support deserialization of Guid columns.
  2059. Set MappingType.Attribute to columns infered from attributes.
  2060. 2004-03-29 Juraj Skripsky <[email protected]>
  2061. * ExpressionElements.cs : remove
  2062. * DataColumn.cs, DataRelationCollection.cs, DataTable.cs :
  2063. Integration of new Mono.Data.SqlExpressions classes used in
  2064. DataTable.{Select, Compute}.
  2065. Fixes bug #55503 and lots of failures in DataTableTest.cs.
  2066. 2004-03-28 Juraj Skripsky <[email protected]>
  2067. * Index.cs: Simple fix in ComparePartialRowNonUnique.
  2068. This fixes bugs #56129 and #56014.
  2069. 2004-03-25 Lluis Sanchez Gual <[email protected]>
  2070. * DataSet.cs: In WriteXml (string filename, XmlWriteMode mode), close the
  2071. stream after writing the dataset. This fixes bug #52581.
  2072. Also added several writer.Close into finally blocks, so writers are properly
  2073. closed in case of an exception.
  2074. 2004-03-12 Andreas Nahr <[email protected]>
  2075. * Constraint.cs: DO NOT USE the consts scheme if types can be referenced directly!
  2076. * DataColumn.cs: DO NOT USE the consts scheme if types can be referenced directly!
  2077. * ColumnTypeConverter.cs: Added stub
  2078. * DefaultValueTypeConverter: Added stub
  2079. * ConstraintConverter.cs: Added stub
  2080. 2004-03-04 Eran Domb <[email protected]>
  2081. * XmlDataLoader.cs : Xml reading reviewed. Added support for additional xml formats as described
  2082. in MS.NET documentation (missing DataSet element etc).
  2083. 2004-03-04 Eran Domb <[email protected]>
  2084. * Node.cs : Added.
  2085. * Index.cs : Rollback last changes.
  2086. 2004-03-03 Atsushi Enomoto <[email protected]>
  2087. * Index.cs : justa build fix.
  2088. 2004-03-03 Eran Domb <[email protected]>
  2089. * Index.cs : Added.
  2090. * Constraint.cs, ForeignKeyConstraint.cs, UniqueConstraint, ConstraintCollection.cs, DataColumn.cs,
  2091. DataRow.cs, DataRowCollection.cs, DataSet.cs, DataTable.cs : Changes made for using indexes on tables.
  2092. This changes made for performance improvement.
  2093. 2004-02-08 Eran Domb <[email protected]>
  2094. * XmlSchemaMapper.cs : Read columns is they were written as SimpleContent or as Attributes.
  2095. 2004-02-08 Eran Domb <[email protected]>
  2096. * DataSet.cs: Fix some bugs in ReadXml().
  2097. 2004-02-04 Lluis Sanchez Gual <[email protected]>
  2098. * DataSet.cs: Added missing method that broke the build.
  2099. 2004-02-04 Eran Domb <[email protected]>
  2100. * DataRowCollection.cs (InsertAt): Add a check for null row. Replace check of IndexOf with RowId for
  2101. better performance.
  2102. * DataSet.cs (GetTableSchema) : Add supprot for simple content columns. Change the condition for a case
  2103. when all column are attributes (elements count is 0), we still want to add the relations. No relations
  2104. can be on simple contents.
  2105. (AddUniqueConstraints) Check that the column of the constraint are not hidden.
  2106. (AddForeignKeys) Check that the relation has constraints attach to it.
  2107. * XmlConstants.cs : Added constant.
  2108. 2004-02-04 Eran Domb <[email protected]>
  2109. * DataSet.cs : GetSchemaSerializable() return null and not BuildSchema().
  2110. DoWriteXmlSchema calls BuildSchema ().
  2111. 2004-02-04 Lluis Sanchez Gual <[email protected]>
  2112. * DataRow.cs: Added SetOriginalValue(), which is used to set the original
  2113. value of a column.
  2114. * DataRowCollection.cs: In InsertAt(), perform the correct checks and
  2115. attach the row.
  2116. * DataSet.cs: Fixed method GetChanges(): Parent rows of modified rows must
  2117. also be added to the dataset.
  2118. In WriteTable(), do not write unchanged rows when writing the original
  2119. version of the table.
  2120. Added WriteIndividualTableContent(), for writing the contents of a single
  2121. table.
  2122. Changed BuildSchema and related methods, so it can generate a schema for
  2123. any set of tables, not just the tables of the dataset (needed for
  2124. single datatable serialization).
  2125. * DataTable.cs: Implemented serialization constructor and GetObjectData method.
  2126. Also implemented some ReadXmlSchema methods.
  2127. * XmlDiffLoader.cs: Read and process the xml document directly from XmlReader,
  2128. instead of loading the full dataset in an XmlDocument. It is faster and
  2129. saves memory. Also fixed several problems when generating the changes.
  2130. * XmlSchemaMapper.cs: Support reading schemas for single tables (used by
  2131. table serialization).
  2132. 2004-02-02 Eran Domb <[email protected]>
  2133. * DataSet.cs : Add indentation to the xml serialization only if we create the XmlWriter.
  2134. Add the namespace attribute even if namespace is an empty string for inteoperability with MS.NET.
  2135. * DataTable.cs (NewRow): Create only one DataRowBuilder.
  2136. Initiate new row with row id -1.
  2137. * DataRow.cs : Add RowId property.
  2138. * DataRowBuilder.cs : Add _rowId member.
  2139. * DataRowCollection.cs (Add) : Use the RowId property of the new row to check if it is already exists in the collection.
  2140. 2004-01-26 Eran Domb <[email protected]>
  2141. * XmlConstants.cs : Added some constants.
  2142. * DataColumn.cs : Added a method to retrive AutoIncrement value.
  2143. * XmlDataLoader.cs : Set the value of the foriegn key column, according to the value of the
  2144. parent table column.
  2145. * XmlDiffLoader.cs : Convert the value comming from the xml.
  2146. * XmlSchemaMapper.cs (Read) : Set the DataSet namespace.
  2147. (ReadXmlSchemaSequence) : Change the logic that decides if this element is a column or a table.
  2148. (ReadXmlSchemaElement) : Set the locale of the dataset.
  2149. (ReadColumn) : Set the column type. Find if the column is AutoIncrement.
  2150. (GetColumnType) : New method to get the column type from the attribute value.
  2151. (ReadXmlSchemaUnique) : Improve parsing of XPath. Set the constraint as a PK if needed,
  2152. and add the constraint to the table.
  2153. (ReadXmlSchemaKeyref) : Improve parsing of XPath. Create the FK constraint and add it to
  2154. the table.
  2155. * DataSet.cs : Improving writing of unique constraints, and foriegn key constraint. Givving them the correct names.
  2156. Writing more information to the schema for interoperability with ms.net.
  2157. Improve diffgarm writing mode.
  2158. 2004-01-21 Atsushi Enomoto <[email protected]>
  2159. * TypedDataSetGenerator.cs : Implemented GenerateIdName().
  2160. 2004-01-21 Eran Domb <[email protected]>
  2161. * XmlDataLoader.cs (AddRowToTable) : Give thre new relation correct name.
  2162. Do not set the child column to be AutoIncrement.
  2163. Create the new column for the relation as MappingType.Hidden so they will not be serialized
  2164. when writing the dataset to xml.
  2165. 2004-01-20 Atsushi Enomoto <[email protected]>
  2166. * Added missing TypedDataSetGenerator.cs.
  2167. 2004-01-08 Eran Domb <[email protected]>
  2168. * XmlSchemaMapper.cs : Fix a bug. Check if table already in DataSet before adding it.
  2169. * DataSet.cs (ReadXml) : Fix bugs. Read correctly the xml file with XmlReadMode of DiffGram,
  2170. InferSchema, ReadSchema and IgnoreSchema.
  2171. * XmlDataLoader.cs : All modes use the same logic.
  2172. * XmlDiffLoader.cs : Adding BuildXmlDocument method to the class.
  2173. 2004-01-06 Eran Domb <[email protected]>
  2174. * DataRelationCollection.cs : Use IndexOf in indexer.
  2175. * DataSet.cs : Adding support for WriteXml with diffgram. Code style changes.
  2176. * XmlDataLoader.cs : Set the DataSet.enforceConstraints to false before loading the tables.
  2177. * XmlDiffLoader.cs : Reading nested tables.
  2178. * XmlSchemaMapper.cs : Reading the relation.
  2179. * XmlConstants.cs : Adding some constants.
  2180. 2004-01-05 Jackson Harper <[email protected]>
  2181. * DataView.cs: Set readonly property of property descriptor. This
  2182. fixes bug #52598.
  2183. 2004-01-01 Sanjay Gupta <[email protected]>
  2184. * DataRelationCollection.cs : Fixed incorrect generation of default
  2185. Relation name.
  2186. * DataSet.cs : Added missing functionality in WriteXml().
  2187. * XmlConstants.cs : Added new constants.
  2188. 2003-12-27 Atsushi Enomoto <[email protected]>
  2189. * DataSet.cs : Fixed incorrect WriteXml() signature.
  2190. 2003-12-18 Jackson Harper <[email protected]>
  2191. * DataView.cs: Implement AddNew, Delete, and OnListChanged.
  2192. 2003-12-17 Atsushi Enomoto <[email protected]>
  2193. * DataSet.cs, XmlDataLoader.cs : Table name should be encoded before
  2194. they take shape of xml. This fixed bug #52240
  2195. 2003-12-16 Tim Coleman <[email protected]>
  2196. * KeyRestrictionBehavior.cs:
  2197. New stubs added for .NET 1.2
  2198. * DataTable.cs:
  2199. Changes for 1.2
  2200. 2003-12-08 Eran Domb <[email protected]>
  2201. * DataColumn.cs (Expression) : Validate the expression.
  2202. * DataRelationCollection.cs (IndexOf) : Added new method sensetive to case differences in relation name.
  2203. (Contains, IndexOf, this[], Add) : Call new IndexOf when needed.
  2204. * DataRow.cs (this[]) : Fix the condition for throwing RowNotInTableException.
  2205. (RejectChanges) : Detach row when state was Added.
  2206. (CollectionChanged) : Fix a bug.
  2207. * ExpressionElement (ValidateExpression) : Fix a bug.
  2208. * ForeignKeyConstraint.cs (AssertConstraint) : Added implementation. Check all rows from child table have
  2209. a parent row in the parent table.
  2210. (_validateColumns) : Fix bugs.
  2211. * MergeManager.cs (AdjustSchema) : Fix a bug.
  2212. * XmlDataLoader.cs (ReadModeInferSchema) : Change implementation. Now we can read nested xml, and we generate the relations
  2213. between the tables.
  2214. 2003-11-30 Eran Domb <[email protected]>
  2215. * DataColumnCollection.cs (this[string name]) : Use IndexOf to find the column.
  2216. (Add) : Find if the new column name is the same as the one found in IndexOf.
  2217. (IndexOf) : New method.
  2218. (Contains) : Use new IndexOf.
  2219. (IndexOf) : Use new IndexOf.
  2220. * DataRelationCollection.cs (DataRelationCollection.AddCore) : Add The Relation to the collection.
  2221. (DataSetRelationCollection.AddCore) : First add the UniqueConstraint.
  2222. * DataRow.cs (this[int columnIndex, DataRowVersion version]) : Change exceptions.
  2223. (Delete) : Detach row if the RowState was Added.
  2224. (GetChildRows) : Get the array form the ChildTable.
  2225. (GetParentRows) : Get the array from the ParenTable.
  2226. * DataRowCollection.cs (Remove) : Check if row state is Detached to avoid exception.
  2227. * DataSet.cs (IXmlSerializable.ReadXml) : Do not call MoveToContent and ReadEndElement - the XmlSerializationReader does it.
  2228. * DataTable.cs (PrimaryKey) : Fix bugs.
  2229. (Compute) : First call Select. Then create ExpressionAggregate to aggregate the Select result.
  2230. * DataTableCollection.cs (Add) : Fix a bug.
  2231. * ExpressionElement.cs (ValidateExpression) : Turning ValidateExpression to static.
  2232. (Result) : Added new interface to AggregateExpression that get DataRow[] as a param.
  2233. Some code style changes (tab instead of whit spaces, alignment, etc...).
  2234. * ForeignKeyConstraint.cs (_validateColumns) : Throw correct exception.
  2235. * MergeManager.cs (AdjustSchema) : Fix a bug.
  2236. 2003-11-26 Miguel de Icaza <[email protected]>
  2237. * DataSet.cs: Add a few more missing methods, code style updated
  2238. to Mono style.
  2239. 2003-11-26 Tim Coleman <[email protected]>
  2240. * ConflictOptions.cs DataAdapterException.cs DataTableReader.cs
  2241. * DbMetaData.cs FillOptions.cs IDataReader2.cs IDataRecord2.cs
  2242. * IDataUpdatableRecord.cs IDbAsyncCommand.cs IDbAsyncConnection.cs
  2243. * IDbExecutionContext.cs IGetTypedData.cs ISetTypedData.cs
  2244. * LoadOption.cs OperationAbortedException.cs ResultSetOptions.cs
  2245. * ResultSetSensitivity.cs StatementCompletedEventArgs.cs
  2246. * StatementCompletedEventHandler.cs UpdateOptions.cs:
  2247. New classes added for NET_2_0
  2248. * DBConcurrencyException.cs DataRelation.cs DataSet.cs DataTable.cs
  2249. * DataTableCollection.cs DataView.cs ForeignKeyConstraint.cs:
  2250. Modifications to add new NET_2_0 functions
  2251. 2003-11-25 Tim Coleman <[email protected]>
  2252. * IDataSources.cs:
  2253. New 1.2 class added
  2254. 2003-11-21 Pedro Martinez Julia <[email protected]>
  2255. * DataRow.cs: Detached row can be accesible (new rows from data
  2256. table are detached). Closes but #51263.
  2257. 2003-11-19 Eran Domb <[email protected]>
  2258. * DataRow.cs : Throw exceptions if Row is Detached.
  2259. (EndEdit) : Check that we are not in middle of ChangeEvent.
  2260. (AcceptChanges) : Detach the row.
  2261. * DataRelation.cs : throw correct exception.
  2262. *UniqueConstraint.cs : throw correct exception.
  2263. 2003-11-09 Pedro Martinez Julia <[email protected]>
  2264. * DataRow.cs: Use RemoveInternal instead of Remove because the last
  2265. one uses Delete and AcceptChanges.
  2266. * DataRowCollection.cs: When removing, Delete and AcceptChanges
  2267. method from the row are called. Added an internal method that will
  2268. be used by DataRow to "physically" remove the row from the list.
  2269. 2003-11-09 Pedro Martinez Julia <[email protected]>
  2270. * DataRowCollection.cs: To follow the specification: Remove and
  2271. RemoveAt should remove the row. But needed to call DeletingDataRow
  2272. to prepare the deleting.
  2273. * DataRow.cs: Don't call DeletingDataRow when it is called by the
  2274. method Table.Rows.Remove.
  2275. 2003-11-09 Pedro Martinez Julia <[email protected]>
  2276. * DataRowCollection.cs: Make the row be deleted by itself. If not,
  2277. it fails because we need to call OnRowDeleting and OnRowDeleted. It
  2278. is full implemented inside DataRow.
  2279. 2003-11-05 Eran Domb <[email protected]>
  2280. * DataView.cs (ctor) : Changing default RowStateFilter to CurrentRow.
  2281. 2003-11-04 Eran Domb <[email protected]>
  2282. * DataRow.cs (CheckChildRows) : Improving the implementation - checking child for all FK, and not
  2283. on all Relations.
  2284. (GetChildRows) : Adding some checks.
  2285. (GetParentRows) : Adding some checks. Fix a bug in implementation.
  2286. (SetParentRow) : Added implementation.
  2287. * DataRowCollection.cs (Add) : Added more checks on the row added to the collection.
  2288. * DataTable.cs (Copy) : Set the During Loading flag to save unnecessary assertions.
  2289. * ForeignKeyConstraint.cs (AssertConstraint) : Fixing bugs in implementation. Checking for DBNull values in the row.
  2290. * MergeManager.cs : Check that the target table is not null.
  2291. 2003-10-27 Eran Domb <[email protected]>
  2292. * DataColumn.cs (DefaultValue) : Changing null value to DBNull. Checking that the type of the new default value
  2293. can be converted to the column type.
  2294. * DataRelationCollection.cs (AddCore) : Give the new FK the name of the relation.
  2295. * DataRow.cs (EndEdit) : Check if we need to validate the constraints.
  2296. (GetParentRows, GetChildRows) : Checking that the row has the wanted version, before accessing the row's value.
  2297. * DataRowCollection.cs (Add) : Fixing a bug.
  2298. (Clear) : Before clearing the array check that there is no violation of FK constraint.
  2299. * DataSet.cs (Prefix) : If value is null chage it to empty string.
  2300. (GetXml) : Removing the Processing Instructions from the xml string as in MS ADO.NET.
  2301. * ExpressionElement : Adding support for IN expresion.
  2302. * DataTable (CopyConstraints) : New method that copy the tables constraints to the copy table.
  2303. (Select) : Adding support for DataViewwRowState.
  2304. * ForeignKeyConstraint.cs (AssertConstraint) : Adding implementation.
  2305. * MergeManager.cs (MergeRow) : Fix bugs.
  2306. 2003-10-27 Eran Domb <[email protected]>
  2307. * DataRow.cs (SetColumnValue): Donot check null value when in midle of loading data.
  2308. check null values when ending loading data.
  2309. * DataSet.cs (RejectChanges) : Imlementation.
  2310. (Prefix) : If prefix was changed fire event. Check that the prefix is not null - if null,
  2311. change it to empty string.
  2312. * DataTable.cs (BeginLoadData, EndLoadData) : Impemantation.
  2313. 2003-10-22 Eran Domb <[email protected]>
  2314. * MergeManager.cs : Fixing bugs. Adding check for PrimaryKey matching.
  2315. * ConstraintCollection.cs (RamoveAt): Change implemntation.
  2316. * DataTableCollection (CanRemove): Removing cast to Constraint.
  2317. 2003-10-22 Eran Domb <[email protected]>
  2318. * DataRelationCollection.cs (AddCore): The unique constraint was added even if the createConstraints flag was false.
  2319. (Clear): The collection was cleared without removing the relation from the parent and child tables.
  2320. * DataSet.cs (Copy, Clone): The Relations of the DataSet were not copy.
  2321. (HasChanges, Reset): Imlementation.
  2322. * DataTable.cs (HasErrors): There is no flag for errors, instead the table ask her row if they have any errors.
  2323. This is because the we do not no when to turn off the flag.
  2324. (Locale): Changing implementation to behave like ADO.NET.
  2325. (AcceptChanges): Fix bug.
  2326. (Clear): Check that this table is not referenced from a foreign key constraint.
  2327. (Copy): Do not try to access a deleted row.
  2328. (CopyProperties): Copy the PrimaryKey.
  2329. (GetChanges, ImportRow): Implementation.
  2330. (LoadDataRow): Adding implementation if the table has PrimaryKey.
  2331. (ToString): Changing implementation to behave like ADO.NET.
  2332. * UniqueConstraint.cs (AssertConstraint): support for Multiple DataColumns in the constraint.
  2333. * DataRow.cs (Ctor): In the constructor we initiate the current array, but we should initiate only the proposed array for new rows.
  2334. (HasErrors): Implementation.
  2335. (Delete): Added checking for child rows of the deleted row.
  2336. (EndEdit): Added checking for child row and firing events.
  2337. (GetColumnError): Added a check that the method will not return null, as in ADO.NET(an empty string is returned).
  2338. (GetColumnsInError): Added a check for null values in column error.
  2339. (HasVersion): Added special treatment for special RowState.
  2340. (CollectionChanged): More checks to avoid NullReferenceException.
  2341. * DataRowCollection.cs (Remove): Fix a bug.
  2342. 2003-10-01 Duncan Mak <[email protected]>
  2343. More patches from Eran Domb <[email protected]>.
  2344. * MergeManager.cs: New file.
  2345. * DataRelationCollection.cs (AddCore): Check that a
  2346. UniqueConstraint is already exists. It loops over the Relations
  2347. instead of the Constraints.
  2348. (Add, AddCore): The relation was added twice.
  2349. * DataSet.cs (Merge, GetChanges, HasChanges): Implemented.
  2350. 2003-09-30 Duncan Mak <[email protected]>
  2351. Patches from Eran Domb <[email protected]>.
  2352. * DataRelation.cs (constructor): When the name of the relation is
  2353. null, it should return an empty, not "Relation".
  2354. * DataRow.cs (AcceptChanges): Added special case for
  2355. RowState.Detached.
  2356. (CancelEdit): Set editing flag to false.
  2357. (IsNull): Check that the value is DBNull.
  2358. * DataRowCollection.cs (Add): There was no check that the table of
  2359. the collection is owned by a DataSet.
  2360. * DataSet.cs (OnMergeFailed): Added.
  2361. * UniqueConstraint.cs (AssertConstraint): There was no check that
  2362. values in the row are not null, where it is a primary key
  2363. column. Also check that the row has a proposed version, if not,
  2364. get the current version when we compare the rows.
  2365. 2003-09-25 Duncan Mak <[email protected]>
  2366. Patches from Eran Domb <[email protected]>.
  2367. * DataColumn.cs (Unique): Implemented.
  2368. * DataTable.cs:
  2369. * ConstraintCollection.cs:
  2370. * ForeignKeyConstraint.cs (_ensureUniqueConstraintExists): Fixes
  2371. an Exception thrown. Details:
  2372. http://lists.ximian.com/archives/public/mono-devel-list/2003-September/002130.html
  2373. * DataRowCollection.cs (Add): There is no checking that there is
  2374. no violation of the unique constrains.
  2375. * UniqueConstraint.cs (AssertConstraint): There is no checking on
  2376. all columns in the constraint.
  2377. * DataTableCollection (Add): Correctly throw an Exception, more
  2378. details here:
  2379. http://lists.ximian.com/archives/public/mono-devel-list/2003-September/002117.html
  2380. (Remove, RemoveAt): Implemented.
  2381. 2003-07-31 Duncan Mak <[email protected]>
  2382. * DBConcurrencyException.cs: Added new NET_1_1 no-param constructor.
  2383. 2003-07-25 Ravi Pratap <[email protected]>
  2384. * DataRelation.cs (OnPropertyChanging): Calling the 'Invoke'
  2385. method on a delegate is disallowed - fix this.
  2386. 2003-07-22 Lluis Sanchez Gual <[email protected]>
  2387. * DataSet.cs: Implemented IXmlSerializable interface. Added basic support for
  2388. xml serialization. Modified method of writing schema. Now it creates
  2389. a XmlSchema object and serializes it using XmlSerializer.
  2390. * XmlConstants.cs: Added constants for data type names.
  2391. * XmlDataLoader.cs: Fixed deserialization of data. Now converts data to the
  2392. type specified in the column.
  2393. 2003-04-20 Alan Tam <[email protected]>
  2394. * DataRelationCollection.cs: Fix a bug that prevent relations
  2395. from being added via DataSet.
  2396. 2003-04-12 Ville Palo <[email protected]>
  2397. * UniqueConstraint.cs: one tiny fix.
  2398. 2003-04-05 Ville Palo <[email protected]>
  2399. * DataTable.cs: Remove UniqueConstraints when adding new ones
  2400. 2003-04-04 Ville Palo <[email protected]>
  2401. * DataColumnCollection.cs: Little 'case sensitive' fix
  2402. 2003-04-04 Ville Palo <[email protected]>
  2403. * DataRow.cs: AutoIncrement handling to Constructor
  2404. * DataRowCollection.cs: This doesnt need anymore AutoIncrements
  2405. 2003-03-27 Ville Palo <[email protected]>
  2406. * DataTable.cs: Some fixes to PrimaryKey etc...
  2407. * UniqueConstraint.cs: Little clean up
  2408. 2003-03-27 Ville Palo <[email protected]>
  2409. * DataTable.cs: Tiny fix to ToString () -method
  2410. 2003-03-27 Ville Palo <[email protected]>
  2411. * ConstraintCollection.cs: Little fix.
  2412. * DataColumn.cs: Added new internal method SetUnique()
  2413. * UniqueConstraint.cs: some little fixes
  2414. 2003-03-26 Ville Palo <[email protected]>
  2415. * DataRowCollection.cs: Bugfixes, implementation,...
  2416. 2003-03-26 Ville Palo <[email protected]>
  2417. * DataColumn.cs: If DataType if set to something else than short, int
  2418. or long and AutoIncrement is true, AutoIncrement is must set to false.
  2419. 2003-03-26 Gonzalo Paniagua Javier <[email protected]>
  2420. * DataRow.cs:
  2421. (BeginEdit): fixed array bound problem when a column has been added.
  2422. (EndEdit): just assign proposed to current as proposed is set to null.
  2423. This also fixes another array boudn problem.
  2424. 2003-03-21 Alan Tam <[email protected]>
  2425. * DataRow.cs: Fixed problems in accessers, BeginEdit, CancelEdit,
  2426. EndEdit and AcceptChanges to act correctly according to DataRowState
  2427. and DataRowVersion.
  2428. * DataRowCollection.cs: Call AttachRow and DetachRow when a row is
  2429. attached and detached from the collection.
  2430. 2003-03-20 Alan Tam <[email protected]>
  2431. * DataColumn.cs: Store empty string for Expression when null is passed in.
  2432. Classes generated by XSD.exe passes null by default.
  2433. 2003-03-16 Ville Palo <[email protected]>
  2434. * DataColumnCollection.cs: Tiny clean up
  2435. 2003-03-16 Ville Palo <[email protected]>
  2436. * DataColumn.cs: little fixes.
  2437. * DataColumnCollection.cs: Lots of little fixes and improvments.
  2438. 2003-03-12 Alan Tam <[email protected]>
  2439. * DataSet.cs: Fixed a bug that the file written does not close correctly.
  2440. 2003-03-08 Alan Tam <[email protected]>
  2441. * DataRelationCollection.cs: Removed the mis-overridden methods
  2442. * DataRow.cs: Fixed an attribute
  2443. * DataSet.cs: Fixed the modifiers
  2444. 2003-03-06 Aleksey Demakov <[email protected]>
  2445. * DataTableCollection.cs: The Contains (string name),
  2446. IndexOf (string name) methods, and item[string name] indexer
  2447. now behave more like .NET with respect to case-sensitivity.
  2448. That is if there is an exactly matching item then this one is used.
  2449. If there is only one item differing in case then it used.
  2450. If there are more than one item differing in case then
  2451. Contains returns false, IndexOf returns -1, and item[]
  2452. throws an ArgumentException.
  2453. 2003-02-28 Ville Palo <[email protected]>
  2454. * ExpressionElement.cs: More implementation.
  2455. 2003-02-28 Alan Tam <[email protected]>
  2456. * DataSet.cs: Changed WriteTable so that it now calls the newly written
  2457. WriteObjectXml to direct the call to the respective XmlConvert method.
  2458. This fixes the wrong format written to XML files of bool, float,
  2459. double, DateTime and TimeSpan types.
  2460. 2003-02-25 Alan Tam <[email protected]>
  2461. * DataRelation.cs: Added SetDataSet for DataSetRelationCollection to use.
  2462. * DataRelationCollection.cs: Implemented AddRange and Contains.
  2463. Implemented AddRange, Clear, List and RemoveCore for DataSetRelationColletion.
  2464. Implemented AddCore, List and RemoveCore for DataTableRelationCollection.
  2465. Reimplemented most Add methods to eliminate duplicated checks.
  2466. Centralized RelationName generation procedure in GetNextDefaultRelationName.
  2467. 2003-02-25 Alan Tam <[email protected]>
  2468. * DataColumn.cs: Fixed wrong storage representation of Expression
  2469. (using empty string instead of null) so that ToString() returns nothing.
  2470. * DataColumnCollection.cs: Reimplemented GetNextDefaultColumnName so that
  2471. auto column naming now works as expected. Reimplemented some Add methods
  2472. to eliminate code duplication.
  2473. 2003-02-19 Ville Palo <[email protected]>
  2474. * DataTable.cs: DataTable.CaseSensitive follows parent
  2475. DataSet.CaseSensitive property if DataTable.CaseSensitive has never
  2476. been changed directly from DataTable
  2477. 2003-02-19 Ville Palo <[email protected]>
  2478. * DataSet.cs: When CaseSensitive property is changed all of the Tables
  2479. of DataSet have to change too
  2480. 2003-02-19 Daniel Morgan <[email protected]>
  2481. * InternalDataCollectionBase.cs: revert change to field
  2482. to fix build
  2483. * DataViewManager.cs
  2484. * DataView.cs
  2485. * DataTable.cs
  2486. * DataSet.cs: commented use of DesignerAttribute
  2487. because it broke the build. According to MSDN,
  2488. DesignerAttribute does not have a zero-argument constructor
  2489. 2003-02-18 Ville Palo <[email protected]>
  2490. * DataColumnCollectin.cs: Little fix for indexer and case sensitivity
  2491. 2003-02-18 Alan Tam <[email protected]>
  2492. * DataRow.cs: Implemented GetParentRow and GetParentRows.
  2493. * DataSet.cs: Added stub for HasChanges, InferXmlSchema,
  2494. OnPropertyChanging, OnRemoveRelation, OnRemoveTable,
  2495. RaisePropertyChanging.
  2496. * DataTable.cs: Implemented NewRowArray.
  2497. * DataTablePropertyDescriptor: Fixed a modifier.
  2498. * InternalDataCollectionBase.cs: Fixed modifiers. Implemented SyncRoot.
  2499. * PropertyCollection.cs: Minor fix.
  2500. * ConstraintCollection.cs DataColumn.cs DataColumnCollection.cs
  2501. * DataRelation.cs DataRelationCollection.cs DataRow.cs
  2502. * DataRowCollection.cs DataRowState.cs DataSet.cs DataTable.cs
  2503. * DataTableCollection.cs DataTablePropertyDescriptor.cs DataView.cs
  2504. * DataViewManager.cs DataViewRowState.cs DataViewSettingCollection.cs
  2505. * ForeignKeyConstraint.cs InternalDataCollectionBase.cs
  2506. * PropertyCollection.cs UniqueConstraint.cs: Added missing attributes
  2507. 2003-02-08 Ville Palo <[email protected]>
  2508. * ExpressionElement.cs: More implementation
  2509. 2003-02-05 Alan Tam <[email protected]>
  2510. * DataSet.cs: Added framework for DataSet.Update Implemented missing
  2511. methods GetSchemaSerializable, GetSerializationData,
  2512. ReadXmlSerializable, ShouldSerializeRelations and ShouldSerializeTables
  2513. for DataSet
  2514. * DataTable.cs: Implemented missing methods CreateInstance and
  2515. GetRowType for DataTable
  2516. 2003-02-03 Ville Palo <[email protected]>
  2517. * DataSet.cs: Implemented private method MapType for
  2518. mapping datatypes for XmlSchema
  2519. 2003-02-03 Gonzalo Paniagua Javier <[email protected]>
  2520. * DataView.cs: implemented Dispose.
  2521. 2003-01-30 Ville Palo <[email protected]>
  2522. * ExpressionElement.cs: Added new file. This file is for parsing
  2523. and DataData.Select () -methods and DataColumn.Expression -property
  2524. * DataTable.cs: Implemented Select(string) -method
  2525. 2003-01-28 Ville Palo <[email protected]>
  2526. * DataSet.cs: One little fix to writing xml
  2527. 2003-01-27 Ville Palo <[email protected]>
  2528. * XmlSchemaMapper.cs: Some fixes.
  2529. * DatSet.cs: Some XmlFixes and BeginInit ()/ EndInit () -fix
  2530. 2003-01-24 Ville Palo <[email protected]>
  2531. * UniqueConstraint.cs: Do not set columns Unique property true
  2532. as a default.
  2533. * ForeignKeyConstraint.cs: Add UniqueConstraint to parent Table
  2534. 2003-01-18 Ville Palo <[email protected]>
  2535. * DataTableCollection.cs: Now names new DataTable if it doesn't
  2536. already have a name.
  2537. 2003-01-17 Ville Palo <[email protected]>
  2538. * XmlSchemaMapper.cs: Improvments.
  2539. * XmlConstaints.cs: Added more constants.
  2540. * DataSet.cs: Improvments of reading and writing xml
  2541. * DataColumn.cs: Added default values of properties.
  2542. 2003-01-14 Ville Palo <[email protected]>
  2543. * XmlSchemaMapper.cs: Some improvments
  2544. 2003-01-13 Ville Palo <[email protected]>
  2545. * DataRowCollection.cs: Added IndexOutOfRangeException
  2546. * DataTableCollection.cs: Added OnCollectionChanging and
  2547. OnCollectionChanged events.
  2548. * DataSet.cs: Many fixes. Implemented Clone () and Copy () -methods
  2549. * DataTable.cs: Implemented Copy () and Clone () methods.
  2550. * XmlDataLoader.cs: some fixes.
  2551. * XmlSchemaMapper.cs: comments.
  2552. 2003-01-08 Gonzalo Paniagua Javier <[email protected]>
  2553. * DataColumnPropertyDescriptor.cs: store columnIndex in the .ctor.
  2554. 2003-01-08 Gonzalo Paniagua Javier <[email protected]>
  2555. * DataColumnPropertyDescriptor.cs: fixed typo.
  2556. * DataViewManagerListItemTypeDescriptor.cs: added new internal property
  2557. to get the DataViewManager and removed TablePD class.
  2558. * DataTablePropertyDescriptor.cs: TablePD class is now this one as
  2559. suggested by danmorg.
  2560. 2003-01-06 Ville Palo <[email protected]>
  2561. * XmlDataLoader.cs: Moved diffgram stuff to new internal class
  2562. XmlDiffLoader.
  2563. * XmlDiffLoader.cs: new class for diffgrams. Added handling of
  2564. diffgr:Errors and some fixes and changed XmlReader to XPathNavigator.
  2565. 2003-01-06 Gonzalo Paniagua Javier <[email protected]>
  2566. * DataView.cs: made dataViewManager internal.
  2567. * DataViewManager.cs: use ICustomTypeDescriptor. We don't want the
  2568. properties of the object, but the values of the columns present in a
  2569. row.
  2570. * DataViewManagerListItemTypeDescriptor.cs: implemented GetProperties,
  2571. which returns a PropertyDescriptorCollection. Created a new class
  2572. derived from PropertyDescriptor that treats Table as an object whose
  2573. properties are DataRowView.
  2574. 2003-01-04 Ville Palo <[email protected]>
  2575. * XmlSchemaMapper.cs: Added handling for Constraints, Attributes.
  2576. 2003-01-04 Ville Palo <[email protected]>
  2577. * DataColumn.cs: ExtendedProperties is by default !null-
  2578. 2003-01-04 Ville Palo <[email protected]>
  2579. * DataColumnCollection.cs: Add (DataColumn Column) -method didn't
  2580. set column's ordinal.
  2581. 2003-01-02 Ville Palo <[email protected]>
  2582. * DataSet.cs:
  2583. * XmlDataLoader.cs: XmlReader closing fixes.
  2584. * XmlSchemaReader.cs: Added support for ref=
  2585. 2003-01-01 Ville Palo <[email protected]>
  2586. * DataSet.cs:
  2587. - Added XmlReader and XmlWriter Closing.
  2588. - Moved ReadXmlSchema stuff to new internal class XmlSchemaMapper.
  2589. * XmlSchemaMapper.cs
  2590. - Much better way IMHO to map xmlschema than the old one in
  2591. DataSet.cs. Its, more flexible, cleaner, ...
  2592. 2002-12-29 Ville Palo <[email protected]>
  2593. * XmlDataLoader.cs: Reading diffgrams.
  2594. 2002-12-29 Ville Palo <[email protected]>
  2595. * DataRow.cs: Little fix to indexer and DataColumnCang* trigger fixes.
  2596. * DataTable.cs: Added ChanginDataColumn () for triggering
  2597. DataColumnChanging event
  2598. 2002-12-28 Ville Palo <[email protected]>
  2599. * DataSet.cs: Indentations to WriteXmlSchema () and one little fix
  2600. 2002-12-28 Ville Palo <[email protected]>
  2601. * DataSet.cs: Indentations to WriteXml ()
  2602. 2002-12-27 Ville Palo <[email protected]>
  2603. * DataSet.cs:
  2604. * XmlDataLoader.cs: Moved ReadXml -stuff from DataSet.cs to new
  2605. class XmlDataLoader.cs
  2606. 2002-12-19 Ville Palo <[email protected]>
  2607. * DataSet.cs Implemented ReadXml with XmlReadMode.ReadSchema
  2608. 2002-12-18 Ville Palo <[email protected]>
  2609. * DataSet.cs: Started to implement ReadXml-methods.
  2610. 2002-12-17 Gonzalo Paniagua Javier <[email protected]>
  2611. * DataSet.cs: implemented DefaultViewManager and GetList.
  2612. * DataViewManager.cs: a bit of work on IList and ITypedList needed by
  2613. DataList in System.Web.
  2614. * DataViewManagerListItemTypeDescriptor.cs: custom type descriptor for
  2615. DataViewManager.
  2616. 2002-12-16 Ville Palo <[email protected]>
  2617. * DataRow.cs
  2618. * DataTable.cs: Fixed NullException (rollback -event)
  2619. * DataSet.cs: WriteXml -method does not anymore write <?xml... row.
  2620. 2002-12-15 Ville Palo <[email protected]>
  2621. * DataRow.cs:
  2622. * DataRowCollection.cs: Moved event triggering from DataRow to
  2623. DataRowCollection.
  2624. 2002-12-09 Ville Palo <[email protected]>
  2625. * DataSet.cs: Little fix to WriteTable () -method
  2626. and DoReadXmlSchema () -method.
  2627. 2002-12-06 Ville Palo <[email protected]>
  2628. * DataSet.cs: Clean up to reading xmlschema. This looks much better
  2629. now (work better too), but it not working correctly yet.
  2630. 2002-12-04 Ville Palo <[email protected]>
  2631. * DataRow.cs:
  2632. * DataRowCollection.cs: Added some event handlins stuff.
  2633. * DataSet.cs: Some fixes.
  2634. * DataTable.cs: Added event handlers.
  2635. 2002-11-30 Ville Palo <[email protected]>
  2636. * DataRowChangeEventArgs.cs: Implemented Action and Row properties
  2637. 2002-11-30 Ville Palo <[email protected]>
  2638. * System.Data/DataRow.cs: Added internal property XmlDataID
  2639. 2002-11-29 Ville Palo <[email protected]>
  2640. * DataSystem.Data.DataTableCollection.cs:
  2641. Removed HashTable. There could be situations where DataTable
  2642. is added to collection before it hava TableName. So using
  2643. HashTable is impossible.
  2644. 2002-11-19 Carlos Guzman Alvarez <[email protected]>
  2645. * DataRow.cs: an object that is equal to null
  2646. should be allowed to be set in this indexer too
  2647. to be like .NET
  2648. 2002-11-06 Daniel Morgan <[email protected]>
  2649. * DataColumnPropertyDescriptor.cs: added file
  2650. * System.Data/DataRowView.cs: started implementation
  2651. * DataTable.cs: stubbed more interfaces. Implemented
  2652. IListSource.GetList()
  2653. * DataView.cs: stubbed more interfaces. Implemented
  2654. some properties and methods: GetEnumerator(),
  2655. ITypedList.GetItemProperties, Item indexer, CopyTo()
  2656. 2002-05-18 Nick Drochak <[email protected]>
  2657. * DataRow.cs: Fix typo.