DataRow.GetParentRow Method (String)

 

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

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

public DataRow GetParentRow(
	string relationName
)

Parameters

relationName
Type: System.String

The RelationName of a DataRelation.

Return Value

Type: System.Data.DataRow

The parent DataRow of the current row.

Exception Condition
ArgumentException

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

DataException

A child row has multiple parents.

RowNotInTableException

The row does not belong to the table.

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.

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

private void GetParentRowForTable(
    DataTable thisTable, string relation)
{
    if(thisTable ==null){return;}
    // For each row in the table, print column 1 
    // of the parent DataRow.
    DataRow parentRow;
    foreach(DataRow row in thisTable.Rows)
    {
        parentRow = row.GetParentRow(relation);
        Console.Write("\table child row: " + row[1]);
        Console.Write("\table parent row: " + parentRow[1]+ "\n");
    }
}

private void CallGetParentRowForTable()
{
    // An example of calling the function.
    DataTable thisTable = DataSet1.Tables["Products"];
    DataRelation relation = thisTable.ParentRelations[0];
    GetParentRowForTable(thisTable, relation.RelationName);
}

.NET Framework
Available since 1.1
Return to top
Show: