DataRow.ItemArray DataRow.ItemArray DataRow.ItemArray DataRow.ItemArray Property

Definizione

Ottiene o imposta tutti i valori per la riga mediante una matrice.Gets or sets all the values for this row through an array.

public:
 property cli::array <System::Object ^> ^ ItemArray { cli::array <System::Object ^> ^ get(); void set(cli::array <System::Object ^> ^ value); };
public object[] ItemArray { get; set; }
member this.ItemArray : obj[] with get, set
Public Property ItemArray As Object()

Valore della proprietà

Object[]

Matrice di tipo Object.An array of type Object.

Eccezioni

La matrice è maggiore del numero di colonne nella tabella.The array is larger than the number of columns in the table.

Mancata corrispondenza tra un valore nella matrice e la relativa proprietà DataType nella classe DataColumn corrispondente.A value in the array does not match its DataType in its respective DataColumn.

Un vincolo è stato interrotto da un'operazione di modifica.An edit broke a constraint.

Si è tentato di modificare il valore di una colonna in sola lettura.An edit tried to change the value of a read-only column.

Si è tentato di immettere un valore null in una colonna in cui la proprietà AllowDBNull dell'oggetto DataColumn è false.An edit tried to put a null value in a column where AllowDBNull of the DataColumn object is false.

Esempi

Gli esempi seguenti illustrano come ottenere e impostare i valori utilizzando il ItemArray proprietà.The following examples show how to get and set values using the ItemArray property.

private void CreateRowsWithItemArray()
{
    // Make a DataTable using the function below.
    DataTable dt = MakeTableWithAutoIncrement();
    DataRow relation;
    // Declare the array variable.
    object [] rowArray = new object[2];
    // Create 10 new rows and add to DataRowCollection.
    for(int i = 0; i <10; i++)
    {
        rowArray[0]=null;
        rowArray[1]= "item " + i;
        relation = dt.NewRow();
        relation.ItemArray = rowArray;
        dt.Rows.Add(relation);
    }
    PrintTable(dt);
}

private DataTable MakeTableWithAutoIncrement()
{
    // Make a table with one AutoIncrement column.
    DataTable table = new DataTable("table");
    DataColumn idColumn = new DataColumn("id", 
        Type.GetType("System.Int32"));
    idColumn.AutoIncrement = true;
    idColumn.AutoIncrementSeed = 10;
    table.Columns.Add(idColumn);

    DataColumn firstNameColumn = new DataColumn("Item", 
        Type.GetType("System.String"));
    table.Columns.Add(firstNameColumn);
    return table;
}

private void PrintTable(DataTable table)
{
    foreach(DataRow row in table.Rows)
    {
        foreach(DataColumn column in table.Columns)
        {
            Console.WriteLine(row[column]);
        }
    }
}
Private Sub CreateRowsWithItemArray()
    ' Make a DataTable using the function below.
    Dim dt As DataTable = MakeTableWithAutoIncrement()
    Dim relation As DataRow

    ' Declare the array variable.
    Dim rowArray(1) As Object

    ' Create 10 new rows and add to DataRowCollection.
    Dim i As Integer
    For i = 0 to 9
       rowArray(0) = DBNull.Value
       rowArray(1)= "item " & i.ToString()
       relation = dt.NewRow()
       relation.ItemArray = rowArray
       dt.Rows.Add(relation)
    Next
    PrintTable(dt)
End Sub
 
Private Function MakeTableWithAutoIncrement() As DataTable
    ' Make a table with one AutoIncrement column.
    Dim table As DataTable = New DataTable("table")
    Dim idColumn As DataColumn = New DataColumn("id", _
        Type.GetType("System.Int32"))
    idColumn.AutoIncrement = True
    idColumn.AutoIncrementSeed = 10
    table.Columns.Add (idColumn)
    
    Dim firstNameColumn As DataColumn = New DataColumn( _
        "Item", Type.GetType("System.String"))
    table.Columns.Add(firstNameColumn)
    MakeTableWithAutoIncrement = table
End Function
 
Private Sub PrintTable(table As DataTable)
    Dim row As DataRow
    Dim column As DataColumn
    For Each row in table.Rows
       For Each column in table.Columns
          Console.WriteLine(row(column))
       Next
    Next
End Sub

Commenti

È possibile usare questa proprietà per impostare o ottenere valori per questa riga tramite una matrice.You can use this property to set or get values for this row through an array. Se si usa questa proprietà per impostare i valori, la matrice deve avere le stesse dimensioni e come la raccolta delle colonne di ordinamento.If you use this property to set values, the array must have the same size and ordering as the column collection. Il passaggio null nella ItemArray indica che è stato specificato alcun valore.Passing null in the ItemArray indicates that no value was specified.

Gli utenti possono generare eccezioni nel ColumnChanging evento o RowChanging evento.Users can generate exceptions in the ColumnChanging event or the RowChanging event.

Si applica a

Vedi anche