DataRow Classe

Definizione

Rappresenta una riga di dati in un oggetto DataTable.

public ref class DataRow
public class DataRow
[System.Serializable]
public class DataRow
type DataRow = class
[<System.Serializable>]
type DataRow = class
Public Class DataRow
Ereditarietà
DataRow
Attributi

Esempio

Nell'esempio seguente viene creato un nuovo DataRow oggetto chiamando il NewRow metodo dell'oggetto DataTable .

private void CreateNewDataRow()
{
    // Use the MakeTable function below to create a new table.
    DataTable table;
    table = MakeNamesTable();

    // Once a table has been created, use the
    // NewRow to create a DataRow.
    DataRow row;
    row = table.NewRow();

    // Then add the new row to the collection.
    row["fName"] = "John";
    row["lName"] = "Smith";
    table.Rows.Add(row);

    foreach(DataColumn column in table.Columns)
        Console.WriteLine(column.ColumnName);
    dataGrid1.DataSource=table;
}

private DataTable MakeNamesTable()
{
    // Create a new DataTable titled 'Names.'
    DataTable namesTable = new DataTable("Names");

    // Add three column objects to the table.
    DataColumn idColumn = new  DataColumn();
    idColumn.DataType = System.Type.GetType("System.Int32");
    idColumn.ColumnName = "id";
    idColumn.AutoIncrement = true;
    namesTable.Columns.Add(idColumn);

    DataColumn fNameColumn = new DataColumn();
    fNameColumn.DataType = System.Type.GetType("System.String");
    fNameColumn.ColumnName = "Fname";
    fNameColumn.DefaultValue = "Fname";
    namesTable.Columns.Add(fNameColumn);

    DataColumn lNameColumn = new DataColumn();
    lNameColumn.DataType = System.Type.GetType("System.String");
    lNameColumn.ColumnName = "LName";
    namesTable.Columns.Add(lNameColumn);

    // Create an array for DataColumn objects.
    DataColumn [] keys = new DataColumn [1];
    keys[0] = idColumn;
    namesTable.PrimaryKey = keys;

    // Return the new DataTable.
    return namesTable;
}
Private Sub CreateNewDataRow()
    ' Use the MakeTable function below to create a new table.
    Dim table As DataTable
    table = MakeNamesTable()

    ' Once a table has been created, use the 
    ' NewRow to create a DataRow.
    Dim row As DataRow 
    row = table.NewRow()

    ' Then add the new row to the collection.
    row("fName") = "John"
    row("lName") = "Smith"
    table.Rows.Add(row)
    
    Dim column As DataColumn
    For Each column in table.Columns
       Console.WriteLine(column.ColumnName)
    Next
    DataGrid1.DataSource=table
 End Sub
 
 Private Function MakeNamesTable() As DataTable
    ' Create a new DataTable titled 'Names.'
    Dim namesTable As New DataTable("Names") 

    ' Add three column objects to the table.
    Dim idColumn As New DataColumn()
    idColumn.DataType = System.Type.GetType("System.Int32")
    idColumn.ColumnName = "id"
    idColumn.AutoIncrement = True
    namesTable.Columns.Add(idColumn)

    Dim fNameColumn As New DataColumn()
    fNameColumn.DataType = System.Type.GetType("System.String")
    fNameColumn.ColumnName = "Fname"
    fNameColumn.DefaultValue = "Fname"
    namesTable.Columns.Add(fNameColumn)

    Dim lNameColumn As New DataColumn()
    lNameColumn.DataType = System.Type.GetType("System.String")
    lNameColumn.ColumnName = "LName"
    namesTable.Columns.Add(lNameColumn)

    ' Create an array for DataColumn objects.
    Dim keys(0) As DataColumn 
    keys(0) = idColumn
    namesTable.PrimaryKey = keys

    ' Return the new DataTable.
    MakeNamesTable = namesTable
 End Function

Commenti

Gli DataRow oggetti e DataColumn sono componenti principali di un oggetto DataTable. Utilizzare l'oggetto DataRow e le relative proprietà e metodi per recuperare e valutare; e inserire, eliminare e aggiornare i valori in DataTable. Rappresenta DataRowCollection gli oggetti effettivi DataRow in DataTablee DataColumnCollection contiene gli DataColumn oggetti che descrivono lo schema dell'oggetto DataTable. Utilizzare la proprietà di Item[] overload per restituire o impostare il valore di un oggetto DataColumn.

Utilizzare le HasVersion proprietà e IsNull per determinare lo stato di un determinato valore di riga e la RowState proprietà per determinare lo stato della riga rispetto al relativo padre DataTable.

Per creare un nuovo DataRowoggetto , utilizzare il NewRow metodo dell'oggetto DataTable . Dopo aver creato un nuovo DataRowoggetto , usare il Add metodo per aggiungere il nuovo DataRow oggetto a DataRowCollection. Infine, chiamare il AcceptChanges metodo dell'oggetto DataTable per confermare l'aggiunta. Per altre informazioni sull'aggiunta di dati a un DataTableoggetto , vedere Aggiunta di dati a una tabella DataTable.

È possibile eliminare un DataRow oggetto da DataRowCollection chiamando il Remove metodo di DataRowCollectionoppure chiamando il Delete metodo dell'oggetto DataRow . Il Remove metodo rimuove la riga dall'insieme. Al contrario, Delete contrassegna l'oggetto per la DataRow rimozione. La rimozione effettiva si verifica quando si chiama AcceptChanges il metodo . DeleteChiamando , è possibile controllare a livello di codice quali righe sono contrassegnate per la rimozione prima di eliminarle effettivamente. Per altre informazioni, vedere Eliminazione di DataRow.

Costruttori

DataRow(DataRowBuilder)

Inizializza una nuova istanza della classe DataRow utilizzando il generatore specificato. Solo per uso interno.

Proprietà

HasErrors

Ottiene un valore che indica se sono presenti errori in una riga.

Item[DataColumn, DataRowVersion]

Ottiene la versione specificata dei dati archiviati nell'oggetto DataColumn specificato.

Item[DataColumn]

Ottiene o imposta i dati archiviati nell'oggetto DataColumn specificato.

Item[Int32, DataRowVersion]

Ottiene i dati archiviati nella colonna specificata in base all'indice e alla versione dei dati da recuperare.

Item[Int32]

Ottiene o imposta i dati archiviati nella colonna specificata in base all'indice.

Item[String, DataRowVersion]

Ottiene la versione specificata dei dati archiviati nella colonna specificata.

Item[String]

Ottiene o imposta i dati archiviati nella colonna specificata in base al nome.

ItemArray

Ottiene o imposta tutti i valori per la riga mediante una matrice.

RowError

Ottiene o imposta la descrizione personalizzata dell'errore di una riga.

RowState

Ottiene lo stato corrente della riga rispetto alla relativa relazione con la classe DataRowCollection.

Table

Ottiene l'oggetto DataTable di cui è presente uno schema in questa riga.

Metodi

AcceptChanges()

Conferma tutte le modifiche apportate a questa riga dall'ultima chiamata al metodo AcceptChanges().

BeginEdit()

Avvia un'operazione di modifica su un oggetto DataRow.

CancelEdit()

Annulla la modifica corrente sulla riga.

ClearErrors()

Cancella gli errori della riga. Ciò include la proprietà RowError e gli errori impostati con il metodo SetColumnError(Int32, String).

Delete()

Elimina l'oggetto DataRow.

EndEdit()

Chiude il processo di modifica della riga.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetChildRows(DataRelation)

Ottiene le righe figlio di questo oggetto DataRow utilizzando l'oggetto DataRelation specificato.

GetChildRows(DataRelation, DataRowVersion)

Ottiene le righe figlio di un oggetto DataRow utilizzando gli oggetti DataRelation e DataRowVersion specificati.

GetChildRows(String)

Ottiene le righe figlio di un oggetto DataRow utilizzando la proprietà RelationName specificata di un oggetto DataRelation.

GetChildRows(String, DataRowVersion)

Ottiene le righe figlio di un oggetto DataRow utilizzando la proprietà RelationName specificata di un oggetto DataRelation e DataRowVersion.

GetColumnError(DataColumn)

Ottiene la descrizione dell'errore dell'oggetto DataColumn specificato.

GetColumnError(Int32)

Ottiene la descrizione dell'errore per la colonna specificata in base all'indice.

GetColumnError(String)

Ottiene la descrizione dell'errore per una colonna specificata in base al nome.

GetColumnsInError()

Ottiene una matrice delle colonne che contengono errori.

GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetParentRow(DataRelation)

Ottiene la riga padre di un oggetto DataRow utilizzando l'oggetto DataRelation specificato.

GetParentRow(DataRelation, DataRowVersion)

Ottiene la riga padre di un oggetto DataRow utilizzando gli oggetti DataRelation e DataRowVersion specificati.

GetParentRow(String)

Ottiene la riga padre di un oggetto DataRow utilizzando la proprietà RelationName specificata di un oggetto DataRelation.

GetParentRow(String, DataRowVersion)

Ottiene la riga padre di un oggetto DataRow utilizzando la proprietà RelationName specificata di un oggetto DataRelation e DataRowVersion.

GetParentRows(DataRelation)

Ottiene le righe padre di un oggetto DataRow utilizzando l'oggetto DataRelation specificato.

GetParentRows(DataRelation, DataRowVersion)

Ottiene le righe padre di un oggetto DataRow utilizzando gli oggetti DataRelation e DataRowVersion specificati.

GetParentRows(String)

Ottiene le righe padre di un oggetto DataRow utilizzando la proprietà RelationName specificata di un oggetto DataRelation.

GetParentRows(String, DataRowVersion)

Ottiene le righe padre di un oggetto DataRow utilizzando la proprietà RelationName specificata di un oggetto DataRelation e DataRowVersion.

GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
HasVersion(DataRowVersion)

Ottiene un valore che indica se esiste una versione specificata.

IsNull(DataColumn)

Ottiene un valore che indica se nella classe DataColumn specificata è presente un valore null.

IsNull(DataColumn, DataRowVersion)

Ottiene un valore che indica se nella classe DataColumn e nell'enumerazione DataRowVersion specificate è presente un valore null.

IsNull(Int32)

Ottiene un valore che indica se nella colonna è presente un valore null in corrispondenza dell'indice specificato.

IsNull(String)

Ottiene un valore che indica se nella colonna denominata è presente un valore null.

MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
RejectChanges()

Rifiuta tutte le modifiche apportate alla riga sin dall'ultima chiamata al metodo AcceptChanges().

SetAdded()

Modifica la proprietà RowState di una classe DataRow in Added.

SetColumnError(DataColumn, String)

Imposta la descrizione dell'errore per una colonna specificata come oggetto DataColumn.

SetColumnError(Int32, String)

Imposta la descrizione dell'errore per una colonna specificata in base all'indice.

SetColumnError(String, String)

Imposta la descrizione dell'errore per una colonna specificata in base al nome.

SetModified()

Modifica la proprietà RowState di una classe DataRow in Modified.

SetNull(DataColumn)

Imposta il valore della classe DataColumn specificata su un valore null.

SetParentRow(DataRow)

Imposta la riga padre di un oggetto DataRow con il nuovo oggetto DataRow padre specificato.

SetParentRow(DataRow, DataRelation)

Imposta la riga padre di un oggetto DataRow con il nuovo oggetto DataRow e il nuovo oggetto DataRelation padre specificati.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Metodi di estensione

Field<T>(DataRow, DataColumn)

Fornisce accesso fortemente tipizzato a ognuno dei valori della colonna nella riga specificata. Il metodo Field<T>(DataRow, DataColumn) supporta anche tipi nullable.

Field<T>(DataRow, DataColumn, DataRowVersion)

Fornisce accesso fortemente tipizzato a ognuno dei valori della colonna nella riga specificata. Il metodo Field<T>(DataRow, DataColumn, DataRowVersion) supporta anche tipi nullable.

Field<T>(DataRow, Int32)

Fornisce accesso fortemente tipizzato a ognuno dei valori della colonna nella riga specificata. Il metodo Field<T>(DataRow, Int32) supporta anche tipi nullable.

Field<T>(DataRow, Int32, DataRowVersion)

Fornisce accesso fortemente tipizzato a ognuno dei valori della colonna nella riga specificata. Il metodo Field<T>(DataRow, Int32, DataRowVersion) supporta anche tipi nullable.

Field<T>(DataRow, String)

Fornisce accesso fortemente tipizzato a ognuno dei valori della colonna nella riga specificata. Il metodo Field<T>(DataRow, String) supporta anche tipi nullable.

Field<T>(DataRow, String, DataRowVersion)

Fornisce accesso fortemente tipizzato a ognuno dei valori della colonna nella riga specificata. Il metodo Field<T>(DataRow, String, DataRowVersion) supporta anche tipi nullable.

SetField<T>(DataRow, DataColumn, T)

Imposta un nuovo valore per la colonna specificata nell'oggetto DataRow. Il metodo SetField<T>(DataRow, DataColumn, T) supporta anche tipi nullable.

SetField<T>(DataRow, Int32, T)

Imposta un nuovo valore per la colonna specificata nell'oggetto DataRow su cui viene chiamato il metodo. Il metodo SetField<T>(DataRow, Int32, T) supporta anche tipi nullable.

SetField<T>(DataRow, String, T)

Imposta un nuovo valore per la colonna specificata nell'oggetto DataRow. Il metodo SetField<T>(DataRow, String, T) supporta anche tipi nullable.

Si applica a

Prodotto Versioni
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Thread safety

Questo tipo è sicuro per le operazioni di lettura multithreading. È necessario sincronizzare tutte le operazioni di scrittura.

Vedi anche