DataColumn.AutoIncrement DataColumn.AutoIncrement DataColumn.AutoIncrement DataColumn.AutoIncrement Property

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.Gets or sets a value that indicates whether the column automatically increments the value of the column for new rows added to the table.

public:
 property bool AutoIncrement { bool get(); void set(bool value); };
[System.Data.DataSysDescription("DataColumnAutoIncrementDescr")]
public bool AutoIncrement { get; set; }
member this.AutoIncrement : bool with get, set
Public Property AutoIncrement As Boolean

Valore della proprietà

true se il valore della colonna viene incrementato automaticamente; in caso contrario, false.true if the value of the column increments automatically; otherwise, false. Il valore predefinito è false.The default is false.

Eccezioni

La colonna è una colonna calcolata.The column is a computed column.

Esempi

L'esempio seguente imposta la AutoIncrement, AutoIncrementSeed, e AutoIncrementStep proprietà.The following example sets the AutoIncrement, AutoIncrementSeed, and AutoIncrementStep properties.

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);
}
Private Sub AddAutoIncrementColumn()
    Dim column As DataColumn = New DataColumn
    column.DataType = System.Type.GetType("System.Int32")
    With column
        .AutoIncrement = True
        .AutoIncrementSeed = 1000
        .AutoIncrementStep = 10
    End With

    ' Add the column to a new DataTable.
    Dim table As DataTable
    table = New DataTable
    table.Columns.Add(column)
End Sub

Commenti

Se il tipo di questa colonna non Int16, Int32 o Int64 quando questa proprietà è impostata, il DataType proprietà viene assegnata a Int32.If the type of this column is not Int16, Int32, or Int64 when this property is set, the DataType property is coerced to Int32. Se si tratta di una colonna calcolata, viene generata un'eccezione.An exception is generated if this is a computed column. Il Expression è impostata.The Expression property is set. Il valore incrementato viene utilizzato solo se il valore della riga per questa colonna, quando viene aggiunto alla raccolta di colonne, è uguale al valore predefinito.The incremented value is used only if the row's value for this column, when added to the columns collection, is equal to the default value.

È possibile creare una nuova riga utilizzando il ItemArray proprietà del DataRow classe e passando una matrice di valori.You can create a new row using the ItemArray property of the DataRow class and passing in an array of values. Si tratta di un potenziale problema per una colonna con relativi AutoIncrement impostato su true, perché il relativo valore viene generato automaticamente.This is a potential problem for a column with its AutoIncrement set to true, because its value is generated automatically. Usare la ItemArray proprietà, sul posto null nella posizione della colonna della matrice.To use the ItemArray property, place null in the column's position in the array. Per altre informazioni, vedere la ItemArray proprietà del DataRow classe.For more information, see the ItemArray property of the DataRow class.

Se il tipo della colonna SqlInt16 oppure SqlInt32, AutoIncrement non funzionerà.If the type of the column is SqlInt16 or SqlInt32, AutoIncrement will not work. Usare Int16 o Int32.Use Int16 or Int32 instead.

Se il tipo della colonna SqlInt64 oppure SqlDecimal, AutoIncrement funzionerà solo parzialmente.If the type of the column is SqlInt64 or SqlDecimal, AutoIncrement will only partially work. Usare Int64 o decimali.Use Int64 or Decimal instead.

Quando il AutoIncrementStep valore viene aggiunto al valore corrente, viene eliminato il controllo dell'overflow.When the AutoIncrementStep value is added to the current value, the overflow check is suppressed.

Si applica a

Vedi anche