DataRowCollection.Find Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene un oggetto DataRow usando il valore PrimaryKey specificato.
Overload
Find(Object[]) |
Ottiene la riga contenente i valori di chiave primaria specificati. |
Find(Object) |
Ottiene la riga specificata dal valore di chiave primaria. |
Commenti
Le prestazioni devono essere un'operazione O(log n).
Find(Object[])
- Source:
- DataRowCollection.cs
- Source:
- DataRowCollection.cs
- Source:
- DataRowCollection.cs
Ottiene la riga contenente i valori di chiave primaria specificati.
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
Parametri
- keys
- Object[]
Matrice di valori di chiave primaria da trovare. Il tipo della matrice è Object
.
Restituisce
Classe DataRow contenente i valore di chiave primaria specificati; in caso contrario, un valore null se il valore di chiave primaria non è presente nella classe DataRowCollection.
Eccezioni
Nessuna riga corrisponde al valore di indice specificato.
La tabella non dispone di una chiave primaria.
Esempio
Nell'esempio seguente vengono usati i valori di una matrice per trovare una riga specifica in una raccolta di DataRow oggetti. Il metodo presuppone che un oggetto DataTable esista con tre colonne chiave primaria. Dopo aver creato una matrice dei valori, il codice usa il Find metodo con la matrice per ottenere l'oggetto specifico desiderato.
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
Commenti
Per usare il metodo, l'oggetto DataTable a cui appartiene l'oggetto FindDataRowCollection deve avere almeno una colonna designata come colonna chiave primaria. Quando due o più righe hanno lo stesso valore della chiave primaria, viene restituita la prima riga trovata. Ciò si verifica quando EnforceConstraints è impostato su false. Vedere la PrimaryKey proprietà per altre informazioni su come creare una colonna o una PrimaryKey matrice di oggetti quando la tabella ha più di DataColumn una chiave primaria.
Vedi anche
Si applica a
Find(Object)
- Source:
- DataRowCollection.cs
- Source:
- DataRowCollection.cs
- Source:
- DataRowCollection.cs
Ottiene la riga specificata dal valore di chiave primaria.
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
Parametri
Restituisce
Classe DataRow contenente il valore di chiave primaria specificato. In caso contrario, valore null se il valore di chiave primaria non è presente nella classe DataRowCollection.
Eccezioni
La tabella non dispone di una chiave primaria.
Esempio
Nell'esempio seguente viene usato il Find metodo per trovare il valore della chiave primaria "2" in una raccolta di DataRow oggetti. Il metodo restituisce l'oggetto specifico DataRow che consente di modificare i relativi valori, in base alle esigenze.
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
Commenti
Per usare il metodo, l'oggetto DataTable a cui appartiene l'oggetto Find
DataRowCollection deve avere almeno una colonna designata come colonna chiave primaria. Per altre informazioni su come creare una colonna chiave primaria, vedere la PrimaryKey proprietà .