DataRow.ItemArray Vlastnost

Definice

Získá nebo nastaví všechny hodnoty pro tento řádek prostřednictvím pole.

public object?[] ItemArray { get; set; }
public object[] ItemArray { get; set; }

Hodnota vlastnosti

Object[]

Pole typu Object.

Výjimky

Pole je větší než počet sloupců v tabulce.

Hodnota v poli neodpovídá své DataType hodnotě v příslušném DataColumnpoli .

Úprava přerušila omezení.

Úprava se pokusila změnit hodnotu sloupce jen pro čtení.

Úprava se pokusila vložit hodnotu null do sloupce, kde AllowDBNullDataColumn objekt je false.

Řádek byl odstraněn.

Příklady

Následující příklady ukazují, jak získat a nastavit hodnoty pomocí ItemArray vlastnosti.

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]);
        }
    }
}

Poznámky

Tuto vlastnost můžete použít k nastavení nebo získání hodnot pro tento řádek prostřednictvím pole. Pokud tuto vlastnost použijete k nastavení hodnot, musí mít pole stejnou velikost a pořadí jako kolekce sloupců. Předání null indikuje ItemArray , že nebyla zadána žádná hodnota.

Uživatelé můžou generovat výjimky v ColumnChanging události nebo události RowChanging .

Platí pro

Produkt Verze
.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

Viz také