DataRowCollection.Find Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает указанное DataRow значение с помощью указанного PrimaryKey значения.
Перегрузки
| Имя | Описание |
|---|---|
| Find(Object[]) |
Возвращает строку, содержащую указанные значения первичного ключа. |
| Find(Object) |
Возвращает строку, указанную значением первичного ключа. |
Комментарии
Производительность должна быть операцией O(log n).
Find(Object[])
- Исходный код:
- DataRowCollection.cs
- Исходный код:
- DataRowCollection.cs
- Исходный код:
- DataRowCollection.cs
- Исходный код:
- DataRowCollection.cs
- Исходный код:
- DataRowCollection.cs
Возвращает строку, содержащую указанные значения первичного ключа.
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
Параметры
- keys
- Object[]
Массив значений первичного ключа для поиска. Тип массива .Object
Возвращаемое значение
DataRow Объект, содержащий указанные значения первичного ключа; в противном случае значение NULL, если значение первичного ключа не существует в объектеDataRowCollection.
Исключения
Строка не соответствует значению индекса.
В таблице нет первичного ключа.
Примеры
В следующем примере используются значения массива для поиска определенной DataRow строки в коллекции объектов. Метод предполагает, что существует DataTable с тремя первичными ключевыми столбцами. После создания массива значений код использует 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
Комментарии
Чтобы использовать Find метод, объект, к которому DataRowCollection принадлежит объект, должен иметь по крайней мере один столбец, DataTable назначенный в качестве столбца первичного ключа. Если две или несколько строк имеют одно и то же значение первичного ключа, возвращается первая строка. Это происходит, если EnforceConstraints задано значение false. Дополнительные сведения о создании PrimaryKey столбца или массиве объектов см. в PrimaryKey свойстве, если таблица содержит несколько первичных DataColumn ключей.
См. также раздел
Применяется к
Find(Object)
- Исходный код:
- DataRowCollection.cs
- Исходный код:
- DataRowCollection.cs
- Исходный код:
- DataRowCollection.cs
- Исходный код:
- DataRowCollection.cs
- Исходный код:
- DataRowCollection.cs
Возвращает строку, указанную значением первичного ключа.
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
Параметры
Возвращаемое значение
ЗначениеDataRow, содержащее указанное значение первичного ключа; в противном случае значение NULL, если значение первичного ключа не существует.DataRowCollection
Исключения
В таблице нет первичного ключа.
Примеры
В следующем примере метод используется Find для поиска значения первичного DataRow ключа "2" в коллекции объектов. Метод возвращает конкретный DataRow объект, позволяющий изменять его значения по мере необходимости.
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
Комментарии
Чтобы использовать Find метод, объект, к которому DataRowCollection принадлежит объект, должен иметь по крайней мере один столбец, DataTable назначенный в качестве столбца первичного ключа. Дополнительные сведения о создании столбца первичного ключа см. в PrimaryKey свойстве.