Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

DataRow.GetParentRow Method (String, DataRowVersion)

Gets the parent row of a DataRow using the specified RelationName of a DataRelation, and DataRowVersion.

Namespace:  System.Data
Assembly:  System.Data (in System.Data.dll)

'Declaration
Public Function GetParentRow ( _
	relationName As String, _
	version As DataRowVersion _
) As DataRow

Parameters

relationName
Type: System.String

The RelationName of a DataRelation.

version
Type: System.Data.DataRowVersion

One of the DataRowVersion values.

Return Value

Type: System.Data.DataRow
The parent DataRow of the current row.

ExceptionCondition
ArgumentException

The relation and row do not belong to the same table.

ArgumentNullException

The relation is Nothing.

DataException

A child row has multiple parents.

RowNotInTableException

The row does not belong to the table.

VersionNotFoundException

The row does not have the requested DataRowVersion.

In a DataSet, the collection of all parent DataRelation objects for the data set is returned by the GetParentRows method.

The DataTable also contains a collection of DataRelation objects, returned by the ParentRelations property.

Use the HasVersion property to determine whether the DataRowVersion that you want exists.

The following example uses the GetParentRow to print a value from each parent row of each DataRow in a DataTable.

Private Sub GetParentRowForTable _
    (thisTable As DataTable, relation As String, _
    version As DataRowVersion)
     If thisTable Is Nothing Then 
         Return 
     End If 
     ' For each row in the table, print column 1  
     ' of the parent DataRow. 
     Dim parentRow As DataRow
     Dim row As DataRow
     For Each row In  thisTable.Rows
         parentRow = row.GetParentRow(relation, version)
         Console.Write(ControlChars.Tab & " child row: " _
            & row(1).ToString())
         Console.Write(ControlChars.Tab & " parent row: " _
            & parentRow(1).ToString() & ControlChars.Cr)
     Next row
End Sub 

Private Sub CallGetParentRowForTable()
     ' An example of calling the function. 
     Dim thisTable As DataTable = DataSet1.Tables("Products")
     Dim relation As DataRelation = thisTable.ParentRelations(0)
     ' Print only original versions of parent rows.
     GetParentRowForTable(thisTable, relation.RelationName, _
        DataRowVersion.Original)
End Sub

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0
Show:
© 2015 Microsoft