Export (0) Print
Expand All

DataRow.GetChildRows Method (DataRelation, DataRowVersion)

Gets the child rows of a DataRow using the specified DataRelation, and DataRowVersion.

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

public DataRow[] GetChildRows (
	DataRelation relation,
	DataRowVersion version
)
public DataRow[] GetChildRows (
	DataRelation relation, 
	DataRowVersion version
)
public function GetChildRows (
	relation : DataRelation, 
	version : DataRowVersion
) : DataRow[]
Not applicable.

Parameters

relation

The DataRelation to use.

version

One of the DataRowVersion values specifying the version of the data to get. Possible values are Default, Original, Current, and Proposed.

Return Value

An array of DataRow objects.

Exception typeCondition

ArgumentException

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

ArgumentNullException

The relation is a null reference (Nothing in Visual Basic).

RowNotInTableException

The row does not belong to the table.

VersionNotFoundException

The row does not have the requested DataRowVersion.

The DataTable also contains a collection of DataRelation objects that is returned by the ChildRelations property.

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

If Default is specified, the version that is used depends on the RowState of the row on which GetChildRows is invoked. If the row on which GetChildRows is invoked has a RowState of Modified, New, or Unchanged, the Current version of the row is used for fetching related child rows with matching values in their Current versions. If the row on which GetChildRows is invoked has a RowState of Deleted, the Original version of the row is used for fetching related child rows with matching values in their original versions.

The following example uses the GetChildRows to return the child DataRow objects for every child DataRelation in a DataTable. The value of each column with the specified version in the row is then printed.

private void GetChildRowsFromDataRelation(DataTable table ) 
{
    DataRow[] arrRows;  
    foreach(DataRelation relation in table.ChildRelations)
    {
        foreach(DataRow row in table.Rows)
        {
            arrRows = row.GetChildRows(relation, 
                DataRowVersion.Proposed);
            // Print values of rows.
            for(int i = 0; i < arrRows.Length; i++)
            {
                foreach(DataColumn column in table.Columns)
                {
                    Console.WriteLine(arrRows[i][column]);
                }
            }
        }
    }
}

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 2.0, 1.0

XNA Framework

Supported in: 1.0

Community Additions

ADD
Show:
© 2015 Microsoft