DataColumn.AutoIncrement Propiedad

Definición

Obtiene o establece un valor que indica si la columna incrementa automáticamente el valor de la columna para las nuevas filas que se agregan a la tabla.

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

Valor de propiedad

true si el valor de la columna se incrementa automáticamente; en caso contrario, false. De manera predeterminada, es false.

Atributos

Excepciones

La columna es una columna calculada.

Ejemplos

En el ejemplo siguiente se establecen las AutoIncrementpropiedades , AutoIncrementSeedy AutoIncrementStep .

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 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

Comentarios

Si el tipo de esta columna no es Int16, Int32 o Int64 cuando se establece esta propiedad, la DataType propiedad se convierte en Int32. Se genera una excepción si se trata de una columna calculada. La Expression propiedad se establece. El valor incrementado solo se usa si el valor de la fila para esta columna, cuando se agrega a la colección de columnas, es igual al valor predeterminado.

Puede crear una nueva fila mediante la ItemArray propiedad de la DataRow clase y pasar una matriz de valores. Se trata de un posible problema para una columna con su AutoIncrement establecido trueen , porque su valor se genera automáticamente. Para usar la ItemArray propiedad , colóquela null en la posición de la columna en la matriz. Para más información, consulte la propiedad ItemArray de la clase DataRow.

Si el tipo de la columna es SqlInt16 o SqlInt32, AutoIncrement no funcionará. En su lugar, use Int16 o Int32.

Si el tipo de la columna es SqlInt64 o SqlDecimal, AutoIncrement solo funcionará parcialmente. En su lugar, use Int64 o Decimal.

Cuando el AutoIncrementStep valor se agrega al valor actual, se suprime la comprobación de desbordamiento.

Se aplica a

Consulte también