次の方法で共有


DataRow.GetParentRow メソッド

定義

DataRow の親行を取得します。

オーバーロード

GetParentRow(DataRelation)

指定した DataRow を使用して、DataRelation の親行を取得します。

GetParentRow(String)

DataRow の指定した RelationName を使用して、DataRelation の親行を取得します。

GetParentRow(DataRelation, DataRowVersion)

指定した DataRowDataRelation を使用して、DataRowVersion の親行を取得します。

GetParentRow(String, DataRowVersion)

DataRow の指定した RelationNameDataRelation を使用して、DataRowVersion の親行を取得します。

GetParentRow(DataRelation)

ソース:
DataRow.cs
ソース:
DataRow.cs
ソース:
DataRow.cs

指定した DataRow を使用して、DataRelation の親行を取得します。

public:
 System::Data::DataRow ^ GetParentRow(System::Data::DataRelation ^ relation);
public System.Data.DataRow? GetParentRow (System.Data.DataRelation? relation);
public System.Data.DataRow GetParentRow (System.Data.DataRelation relation);
member this.GetParentRow : System.Data.DataRelation -> System.Data.DataRow
Public Function GetParentRow (relation As DataRelation) As DataRow

パラメーター

relation
DataRelation

使用する DataRelation

戻り値

現在の行の親 DataRow

例外

この relationDataTable に属していません。

- または -

行が null です。

子の行に複数の親が含まれます。

この行は DataRelation オブジェクトの子テーブルに属していません。

この行はテーブルに属していません。

次の例では、 を GetParentRow 使用して、 内のすべての子 DataRow の子 DataRelation オブジェクトを DataTable返します。 その後、行の各列の値が出力されます。

private void GetParentRowForTable(DataTable thisTable,
    DataRelation 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);
}
Private Sub GetParentRowForTable _
   (thisTable As DataTable, relation As DataRelation)
    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)
        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)
    GetParentRowForTable(thisTable, relation)
End Sub

注釈

では、 DataSetメソッドによってGetParentRows、データ セットのすべての親DataRelationオブジェクトのコレクションが返されます。

DataTableには、 プロパティによってParentRelations返される オブジェクトのDataRelationコレクションも含まれます。

こちらもご覧ください

適用対象

GetParentRow(String)

ソース:
DataRow.cs
ソース:
DataRow.cs
ソース:
DataRow.cs

DataRow の指定した RelationName を使用して、DataRelation の親行を取得します。

public:
 System::Data::DataRow ^ GetParentRow(System::String ^ relationName);
public System.Data.DataRow? GetParentRow (string? relationName);
public System.Data.DataRow GetParentRow (string relationName);
member this.GetParentRow : string -> System.Data.DataRow
Public Function GetParentRow (relationName As String) As DataRow

パラメーター

relationName
String

RelationNameDataRelation

戻り値

現在の行の親 DataRow

例外

リレーションシップと行が同じテーブルに属していません。

子の行に複数の親が含まれます。

行がこのテーブルに属していません。

次の例では、 を GetParentRow 使用して、 の各 DataRow 親行の値を 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);
}
Private Sub GetParentRowForTable( _
    thisTable As DataTable, relation As String)
     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)
         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)
     GetParentRowForTable(thisTable, relation.RelationName)
End Sub

注釈

では、 DataSetメソッドによってGetParentRows、データ セットのすべての親DataRelationオブジェクトのコレクションが返されます。

DataTableには、 プロパティによってParentRelations返される オブジェクトのDataRelationコレクションも含まれます。

適用対象

GetParentRow(DataRelation, DataRowVersion)

ソース:
DataRow.cs
ソース:
DataRow.cs
ソース:
DataRow.cs

指定した DataRowDataRelation を使用して、DataRowVersion の親行を取得します。

public:
 System::Data::DataRow ^ GetParentRow(System::Data::DataRelation ^ relation, System::Data::DataRowVersion version);
public System.Data.DataRow? GetParentRow (System.Data.DataRelation? relation, System.Data.DataRowVersion version);
public System.Data.DataRow GetParentRow (System.Data.DataRelation relation, System.Data.DataRowVersion version);
member this.GetParentRow : System.Data.DataRelation * System.Data.DataRowVersion -> System.Data.DataRow
Public Function GetParentRow (relation As DataRelation, version As DataRowVersion) As DataRow

パラメーター

relation
DataRelation

使用する DataRelation

version
DataRowVersion

取得するデータのバージョンを指定する DataRowVersion 値の 1 つ。

戻り値

現在の行の親 DataRow

例外

行が null です。

- または -

relation は、このテーブルの親リレーションシップに属していません。

子の行に複数の親が含まれます。

このリレーションシップの子テーブルは、この行が属しているテーブルではありません。

この行はテーブルに属していません。

このバージョンのデータが行にありません。

次の例では、 を GetParentRow 使用して、 内のすべての子 DataRow の子 DataRelation オブジェクトを DataTable返します。 その後、行の各列の値が出力されます。

private void GetParentRowForTable(DataTable thisTable,
    DataRelation relation,
    DataRowVersion version)
{
    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, version);
        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];
    // Print only original versions of parent rows.
    GetParentRowForTable(thisTable, relation,
        DataRowVersion.Original);
}
Private Sub GetParentRowForTable _
    (thisTable As DataTable, relation As DataRelation, _
    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, _
        DataRowVersion.Original)
End Sub

注釈

では、 DataSetメソッドによってGetParentRows、データ セットのすべての親DataRelationオブジェクトのコレクションが返されます。

DataTableには、 プロパティによってParentRelations返される オブジェクトのDataRelationコレクションも含まれます。

プロパティを HasVersion 使用して、必要な が DataRowVersion 存在するかどうかを判断します。

こちらもご覧ください

適用対象

GetParentRow(String, DataRowVersion)

ソース:
DataRow.cs
ソース:
DataRow.cs
ソース:
DataRow.cs

DataRow の指定した RelationNameDataRelation を使用して、DataRowVersion の親行を取得します。

public:
 System::Data::DataRow ^ GetParentRow(System::String ^ relationName, System::Data::DataRowVersion version);
public System.Data.DataRow? GetParentRow (string? relationName, System.Data.DataRowVersion version);
public System.Data.DataRow GetParentRow (string relationName, System.Data.DataRowVersion version);
member this.GetParentRow : string * System.Data.DataRowVersion -> System.Data.DataRow
Public Function GetParentRow (relationName As String, version As DataRowVersion) As DataRow

パラメーター

relationName
String

RelationNameDataRelation

version
DataRowVersion

DataRowVersion 値のいずれか 1 つ。

戻り値

現在の行の親 DataRow

例外

リレーションシップと行が同じテーブルに属していません。

relationnull です。

子の行に複数の親が含まれます。

行がこのテーブルに属していません。

要求された DataRowVersion が行にありません。

次の例では、 を GetParentRow 使用して、 の各 DataRow 親行の値を DataTable出力します。

private void GetParentRowForTable(DataTable thisTable,
    string relation, DataRowVersion version)
{
    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, version);
        Console.Write("\t child row: " + row[1]);
        Console.Write("\t parent row: " + parentRow[1]+ "\n");
    }
}

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

    // Print only original versions of parent rows.
    GetParentRowForTable(thisTable, relation.RelationName,
        DataRowVersion.Original);
}
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

注釈

では、 DataSetメソッドによってGetParentRows、データ セットのすべての親DataRelationオブジェクトのコレクションが返されます。

DataTableには、 プロパティによってParentRelations返される オブジェクトのDataRelationコレクションも含まれます。

プロパティを HasVersion 使用して、必要な が DataRowVersion 存在するかどうかを判断します。

適用対象