DataRowCollection.Find Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Belirtilen PrimaryKey değeri kullanarak bir DataRow alır.
Aşırı Yüklemeler
Find(Object[]) |
Belirtilen birincil anahtar değerlerini içeren satırı alır. |
Find(Object) |
Birincil anahtar değeri tarafından belirtilen satırı alır. |
Açıklamalar
Performans bir O(günlük n) işlemi olmalıdır.
Find(Object[])
- Kaynak:
- DataRowCollection.cs
- Kaynak:
- DataRowCollection.cs
- Kaynak:
- DataRowCollection.cs
Belirtilen birincil anahtar değerlerini içeren satırı alır.
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. Dizinin türü şeklindedir Object
.
Döndürülenler
DataRow Belirtilen birincil anahtar değerlerini içeren bir nesne; aksi takdirde birincil anahtar değeri içinde DataRowCollectionyoksa null değer.
Özel durumlar
Bu dizin değerine karşılık gelen satır yok.
Tabloda bir birincil anahtar yoktur.
Örnekler
Aşağıdaki örnek, bir nesne koleksiyonundaki DataRow belirli bir satırı bulmak için dizinin değerlerini kullanır. yöntemi, bir DataTable öğesinin üç birincil anahtar sütunuyla var olduğunu varsayar. Değerlerin dizisini oluşturduktan sonra kod, istediğiniz nesneyi almak için dizi ile yöntemini kullanır Find .
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 Find için, nesnenin DataTable ait olduğu nesnenin DataRowCollection birincil anahtar sütunu olarak belirlenmiş en az bir sütunu olmalıdır. İki veya daha fazla satır aynı birincil anahtar değerine sahip olduğunda, bulunan ilk satır döndürülür. False olarak ayarlandığında bu durum oluşur EnforceConstraints . PrimaryKey Tabloda birden fazla birincil anahtar olduğunda sütun veya nesne dizisi DataColumn oluşturma PrimaryKey hakkında daha fazla bilgi için özelliğine bakın.
Ayrıca bkz.
Şunlara uygulanır
Find(Object)
- Kaynak:
- DataRowCollection.cs
- Kaynak:
- DataRowCollection.cs
- Kaynak:
- DataRowCollection.cs
Birincil anahtar değeri tarafından belirtilen satırı alır.
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
Döndürülenler
DataRow Belirtilen birincil anahtar değerini içeren bir; birincil anahtar değeri içinde DataRowCollectionyoksa null değer.
Özel durumlar
Tabloda bir birincil anahtar yoktur.
Örnekler
Aşağıdaki örnek, bir nesne koleksiyonunda FindDataRow birincil anahtar değeri "2" bulmak için yöntemini kullanır. yöntemi, belirli DataRow bir nesneyi döndürerek değerlerini gerektiği gibi değiştirmenize izin verir.
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 Find
için, nesnenin DataTable ait olduğu nesnenin DataRowCollection birincil anahtar sütunu olarak belirlenmiş en az bir sütunu olmalıdır. PrimaryKey Birincil anahtar sütunu oluşturma hakkında daha fazla bilgi için özelliğine bakın.