DataRowCollection.Find Yöntem

Tanım

DataRowBelirtilen değeri kullanarak bir alır PrimaryKey .Gets a DataRow using the specified PrimaryKey value.

Aşırı Yüklemeler

Find(Object[])

Belirtilen birincil anahtar değerlerini içeren satırı alır.Gets the row that contains the specified primary key values.

Find(Object)

Birincil anahtar değeri tarafından belirtilen satırı alır.Gets the row specified by the primary key value.

Açıklamalar

Performans bir O (log n) işlemi olmalıdır.Performance should be an O(log n) operation.

Find(Object[])

Belirtilen birincil anahtar değerlerini içeren satırı alır.Gets the row that contains the specified primary key values.

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

Parametreler

keys
Object[]

Bulunacak birincil anahtar değerleri dizisi.An array of primary key values to find. Dizi türü Object .The type of the array is Object.

Döndürülenler

DataRow

DataRowBelirtilen birincil anahtar değerlerini içeren bir nesne; Aksi takdirde, birincil anahtar değeri içinde yoksa null değer DataRowCollection .A DataRow object that contains the primary key values specified; otherwise a null value if the primary key value does not exist in the DataRowCollection.

Özel durumlar

Bu dizin değerine karşılık gelen satır yok.No row corresponds to that index value.

Tabloda bir birincil anahtar yoktur.The table does not have a primary key.

Örnekler

Aşağıdaki örnek bir nesne koleksiyonunda belirli bir satırı bulmak için bir dizinin değerlerini kullanır DataRow .The following example uses the values of an array to find a specific row in a collection of DataRow objects. Yöntemi, DataTable üç birincil anahtar sütunu ile bulunduğunu varsayar.The method assumes that a DataTable exists with three primary key columns. Değerlerin bir dizisini oluşturduktan sonra, kod, Find istediğiniz nesneyi almak için yöntemi dizisiyle birlikte kullanır.After creating an array of the values, the code uses the Find method with the array to get the particular object that you want.

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

Açıklamalar

Yöntemini kullanmak için Find , DataTable DataRowCollection nesnenin ait olduğu nesnenin birincil anahtar sütunu olarak belirtilen en az bir sütunu olmalıdır.To use the Find method, the DataTable object to which the DataRowCollection object belongs must have at least one column designated as a primary key column. İki veya daha fazla satır aynı birincil anahtar değerine sahip olduğunda, bulunan ilk satır döndürülür.When two or more rows have the same primary key value, then the first row found is returned. Bu EnforceConstraints , false olarak ayarlandığında oluşur.This occurs when EnforceConstraints is set to false. PrimaryKeyBir sütun oluşturma hakkında daha fazla bilgi PrimaryKey veya DataColumn Tablo birden fazla birincil anahtara sahip olduğunda bir nesne dizisi hakkında daha fazla bilgi için özelliğine bakın.See the PrimaryKey property for more information about how to create a PrimaryKey column, or an array of DataColumn objects when the table has more than one primary key.

Ayrıca bkz.

Şunlara uygulanır

Find(Object)

Birincil anahtar değeri tarafından belirtilen satırı alır.Gets the row specified by the primary key value.

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

Parametreler

key
Object

Bulunacak öğesinin birincil anahtar değeri DataRow .The primary key value of the DataRow to find.

Döndürülenler

DataRow

DataRowBelirtilen birincil anahtar değerini içeren A; Aksi halde birincil anahtar değeri içinde yoksa null değer DataRowCollection .A DataRow that contains the primary key value specified; otherwise a null value if the primary key value does not exist in the DataRowCollection.

Özel durumlar

Tabloda bir birincil anahtar yoktur.The table does not have a primary key.

Örnekler

Aşağıdaki örnek, Find bir nesne koleksiyonunda "2" birincil anahtar değerini bulmak için yöntemini kullanır DataRow .The following example uses the Find method to find the primary key value "2" in a collection of DataRow objects. Yöntemi DataRow , gereken şekilde, değerlerini değiştirmenize izin vererek belirli nesneyi döndürür.The method returns the specific DataRow object letting you change its values, as needed.

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

Açıklamalar

Yöntemini kullanmak için Find , DataTable DataRowCollection nesnenin ait olduğu nesnenin birincil anahtar sütunu olarak belirtilen en az bir sütunu olmalıdır.To use the Find method, the DataTable object to which the DataRowCollection object belongs must have at least one column designated as a primary key column. PrimaryKeyBirincil anahtar sütunu oluşturma hakkında daha fazla bilgi için özelliğine bakın.See the PrimaryKey property for more information about how to create a primary key column.

Ayrıca bkz.

Şunlara uygulanır