DataColumn.AutoIncrement Proprietà

Definizione

Ottiene o imposta un valore che indica se nella colonna viene incrementato automaticamente il valore della colonna per le nuove righe aggiunte alla tabella.

C#
public bool AutoIncrement { get; set; }
C#
[System.Data.DataSysDescription("DataColumnAutoIncrementDescr")]
public bool AutoIncrement { get; set; }

Valore della proprietà

true se il valore della colonna viene incrementato automaticamente; in caso contrario, false. Il valore predefinito è false.

Attributi

Eccezioni

La colonna è una colonna calcolata.

Esempio

Nell'esempio seguente vengono impostate le AutoIncrementproprietà , AutoIncrementSeede AutoIncrementStep .

C#
private void AddAutoIncrementColumn()
{
    DataColumn column = new DataColumn();
    column.DataType = System.Type.GetType("System.Int32");
    column.AutoIncrement = true;
    column.AutoIncrementSeed = 1000;
    column.AutoIncrementStep = 10;

    // Add the column to a new DataTable.
    DataTable table = new DataTable("table");
    table.Columns.Add(column);
}

Commenti

Se il tipo di questa colonna non è Int16, Int32 o Int64 quando questa proprietà è impostata, la DataType proprietà viene impostata su Int32. Se si tratta di una colonna calcolata, viene generata un'eccezione. La Expression proprietà è impostata. Il valore incrementato viene utilizzato solo se il valore della riga per questa colonna, se aggiunto all'insieme columns, è uguale al valore predefinito.

È possibile creare una nuova riga usando la ItemArray proprietà della DataRow classe e passando una matrice di valori. Si tratta di un potenziale problema per una colonna con il relativo AutoIncrement valore impostato su true, perché il relativo valore viene generato automaticamente. Per usare la ItemArray proprietà , posizionare null la posizione della colonna nella matrice. Per altre informazioni, vedere la ItemArray proprietà della DataRow classe .

Se il tipo della colonna è SqlInt16 o SqlInt32, AutoIncrement non funzionerà. Usare invece Int16 o Int32.

Se il tipo della colonna è SqlInt64 o SqlDecimal, AutoIncrement funzionerà solo parzialmente. Usare invece Int64 o Decimal.

Quando il AutoIncrementStep valore viene aggiunto al valore corrente, il controllo dell'overflow viene eliminato.

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

Vedi anche