次の方法で共有


DataRow.GetParentRow メソッド

定義

DataRowの親行を取得します。

オーバーロード

GetParentRow(DataRelation)

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

GetParentRow(String)

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

GetParentRow(DataRelation, DataRowVersion)

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

GetParentRow(String, DataRowVersion)

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

GetParentRow(DataRelation)

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

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

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 を使用して、DataTable内のすべての子 DataRelation の子 DataRow オブジェクトを返します。 その後、行の各列の値が出力されます。

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

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

こちらもご覧ください

適用対象

GetParentRow(String)

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

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

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

DataRelationRelationName

戻り値

現在の行の親 DataRow

例外

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

子行には複数の親があります。

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

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

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

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

適用対象

GetParentRow(DataRelation, DataRowVersion)

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

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

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 を使用して、DataTable内のすべての子 DataRelation の子 DataRow オブジェクトを返します。 その後、行の各列の値が出力されます。

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

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

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

こちらもご覧ください

適用対象

GetParentRow(String, DataRowVersion)

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

DataRelationの指定した RelationName を使用して DataRow の親行を取得し、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

DataRelationRelationName

version
DataRowVersion

DataRowVersion 値の 1 つ。

戻り値

現在の行の親 DataRow

例外

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

relationnullです。

子行には複数の親があります。

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

この行には、要求された DataRowVersionがありません。

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

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

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

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

適用対象