Freigeben über


DataRowCollection.Find Methode

Definition

Ruft einen DataRow mit dem angegebenen PrimaryKey Wert ab.

Überlädt

Name Beschreibung
Find(Object[])

Ruft die Zeile ab, die die angegebenen Primärschlüsselwerte enthält.

Find(Object)

Ruft die Zeile ab, die durch den Primärschlüsselwert angegeben wird.

Hinweise

Die Leistung sollte ein O(Log n)-Vorgang sein.

Find(Object[])

Quelle:
DataRowCollection.cs
Quelle:
DataRowCollection.cs
Quelle:
DataRowCollection.cs
Quelle:
DataRowCollection.cs
Quelle:
DataRowCollection.cs

Ruft die Zeile ab, die die angegebenen Primärschlüsselwerte enthält.

public:
 System::Data::DataRow ^ Find(cli::array <System::Object ^> ^ keys);
public System.Data.DataRow? Find(object?[] keys);
public System.Data.DataRow Find(object[] keys);
member this.Find : obj[] -> System.Data.DataRow
Public Function Find (keys As Object()) As DataRow

Parameter

keys
Object[]

Ein Array von Primärschlüsselwerten, die gesucht werden sollen. Der Typ des Arrays ist Object.

Gibt zurück

Ein DataRow Objekt, das die angegebenen Primärschlüsselwerte enthält; andernfalls ein NULL-Wert, wenn der Primärschlüsselwert nicht in der DataRowCollection.

Ausnahmen

Dieser Indexwert entspricht keine Zeile.

Die Tabelle verfügt nicht über einen Primärschlüssel.

Beispiele

Im folgenden Beispiel werden die Werte eines Arrays verwendet, um eine bestimmte Zeile in einer Auflistung von DataRow Objekten zu finden. Bei der Methode wird davon ausgegangen, dass ein DataTable Schlüssel mit drei Primärschlüsselspalten vorhanden ist. Nach dem Erstellen eines Arrays der Werte verwendet der Code die Find Methode mit dem Array, um das gewünschte Objekt abzurufen.

private void FindInMultiPKey(DataTable table)
{
    // Create an array for the key values to find.
    object[]findTheseVals = new object[3];

    // Set the values of the keys to find.
    findTheseVals[0] = "John";
    findTheseVals[1] = "Smith";
    findTheseVals[2] = "5 Main St.";

    DataRow foundRow = table.Rows.Find(findTheseVals);
    // Display column 1 of the found row.
    if(foundRow != null)
        Console.WriteLine(foundRow[1]);
}
 Private Sub FindInMultiPKey(ByVal table As DataTable)
    ' Create an array for the key values to find.
    Dim findTheseVals(2) As Object

    ' Set the values of the keys to find.
    findTheseVals(0) = "John"
    findTheseVals(1) = "Smith"
    findTheseVals(2) = "5 Main St."

    Dim foundRow As DataRow = table.Rows.Find(findTheseVals)
    ' Display column 1 of the found row.
    If Not (foundRow Is Nothing) Then
        Console.WriteLine(foundRow(1).ToString())
    End If
End Sub

Hinweise

Um die Find Methode zu verwenden, muss das DataTable Objekt, zu dem das DataRowCollection Objekt gehört, mindestens eine Spalte als Primärschlüsselspalte festgelegt haben. Wenn zwei oder mehr Zeilen denselben Primärschlüsselwert aufweisen, wird die erste gefundene Zeile zurückgegeben. Dies tritt ein, wenn EnforceConstraints auf "false" festgelegt ist. Weitere Informationen zum Erstellen einer PrimaryKey Spalte oder eines Arrays von DataColumn Objekten, wenn die Tabelle mehr als einen Primärschlüssel aufweist, finden Sie in der PrimaryKey Eigenschaft.

Weitere Informationen

Gilt für:

Find(Object)

Quelle:
DataRowCollection.cs
Quelle:
DataRowCollection.cs
Quelle:
DataRowCollection.cs
Quelle:
DataRowCollection.cs
Quelle:
DataRowCollection.cs

Ruft die Zeile ab, die durch den Primärschlüsselwert angegeben wird.

public:
 System::Data::DataRow ^ Find(System::Object ^ key);
public System.Data.DataRow? Find(object? key);
public System.Data.DataRow Find(object key);
member this.Find : obj -> System.Data.DataRow
Public Function Find (key As Object) As DataRow

Parameter

key
Object

Der Primärschlüsselwert des DataRow zu suchenden Schlüssels.

Gibt zurück

A DataRow that contains the primary key value specified; otherwise a null value if the primary key value does not exist in the DataRowCollection.

Ausnahmen

Die Tabelle verfügt nicht über einen Primärschlüssel.

Beispiele

Im folgenden Beispiel wird die Find Methode verwendet, um den Primärschlüsselwert "2" in einer Auflistung von DataRow Objekten zu finden. Die Methode gibt das spezifische DataRow Objekt zurück, mit dem Sie die Werte nach Bedarf ändern können.

private void FindInPrimaryKeyColumn(DataTable table,
    long pkValue)
{
    // Find the number pkValue in the primary key
    // column of the table.
    DataRow foundRow = table.Rows.Find(pkValue);

    // Print the value of column 1 of the found row.
    if(foundRow != null)
        Console.WriteLine(foundRow[1]);
}
 Private Sub FindInPrimaryKeyColumn(ByVal table As DataTable, _
    ByVal pkValue As Long)
    ' Find the number pkValue in the primary key 
    ' column of the table.
    Dim foundRow As DataRow = table.Rows.Find(pkValue)

    ' Print the value of column 1 of the found row.
    If Not (foundRow Is Nothing) Then
        Console.WriteLine(foundRow(1).ToString())
    End If
End Sub

Hinweise

Um die Find Methode zu verwenden, muss das DataTable Objekt, zu dem das DataRowCollection Objekt gehört, mindestens eine Spalte als Primärschlüsselspalte festgelegt haben. Weitere Informationen zum Erstellen einer Primärschlüsselspalte finden Sie in der PrimaryKey Eigenschaft.

Weitere Informationen

Gilt für: