[Mono-bugs] [Bug 74813][Nor] New - Cannot call CreateChildView on a deleted row
bugzilla-daemon@bugzilla.ximian.com
bugzilla-daemon@bugzilla.ximian.com
Tue, 3 May 2005 14:55:26 -0400 (EDT)
Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.
Changed by eto@shaw.ca.
http://bugzilla.ximian.com/show_bug.cgi?id=74813
--- shadow/74813 2005-05-03 14:55:26.000000000 -0400
+++ shadow/74813.tmp.515 2005-05-03 14:55:26.000000000 -0400
@@ -0,0 +1,57 @@
+Bug#: 74813
+Product: Mono: Class Libraries
+Version: 1.1
+OS: GNU/Linux [Other]
+OS Details: gentoo
+Status: NEW
+Resolution:
+Severity:
+Priority: Normal
+Component: Sys.Data
+AssignedTo: mono-bugs@ximian.com
+ReportedBy: eto@shaw.ca
+QAContact: mono-bugs@ximian.com
+TargetMilestone: ---
+URL:
+Cc:
+Summary: Cannot call CreateChildView on a deleted row
+
+Description of Problem:
+When you want to process information from a data set that has many
+different (related) tables, you usually use DataRowView.CreateChildView to
+get a list of all the related records. This works, but not for deleted
+records.
+
+Steps to reproduce the problem:
+1. Unzip attached sample
+2. Run it in mono
+
+Actual Results:
+Throws an exception:
+
+Unhandled Exception: System.Data.VersionNotFoundException: There is no
+Default data to accces.
+in <0x00454> System.Data.DataRow:GetChildRows
+(System.Data.ForeignKeyConstraint fkc, DataRowVersion version)
+in <0x00101> System.Data.DataRow:GetChildRows (System.Data.DataRelation
+relation, DataRowVersion version)
+in <0x00015> System.Data.DataRow:GetChildRows (System.Data.DataRelation
+relation)
+in <0x0002d>
+System.Data.DataRowView:CreateChildView(System.Data.DataRelation relation)
+in <0x0012d> TestDataView.Class1:ProcessData ()
+in <0x00013> TestDataView.Class1:TestDataViewStateFilter ()
+in <0x00026> TestDataView.Class1:Main (System.String[] args)
+
+Expected Results:
+Shows all deleted records and their children
+
+How often does this happen?
+Every time
+
+Additional Information:
+This is needed so appropriate action can be taken for each record in the
+data set. We have a (fairly) complex set of routines that will save an
+entire dataset to the database dynamically, which requires this feature to
+know what records have been deleted (ie, should we delete the children
+before deleting the parent, etc).