Compartir a través de


DataColumn Clase

Definición

Representa el esquema de una columna en una DataTable.

public ref class DataColumn : System::ComponentModel::MarshalByValueComponent
public class DataColumn : System.ComponentModel.MarshalByValueComponent
type DataColumn = class
    inherit MarshalByValueComponent
Public Class DataColumn
Inherits MarshalByValueComponent
Herencia

Ejemplos

En el ejemplo siguiente se crea un DataTable objeto con varios DataColumn objetos .

private void MakeTable()
{
    // Create a DataTable.
    DataTable table = new DataTable("Product");

    // Create a DataColumn and set various properties.
    DataColumn column = new DataColumn();
    column.DataType = System.Type.GetType("System.Decimal");
    column.AllowDBNull = false;
    column.Caption = "Price";
    column.ColumnName = "Price";
    column.DefaultValue = 25;

    // Add the column to the table.
    table.Columns.Add(column);

    // Add 10 rows and set values.
    DataRow row;
    for(int i = 0; i < 10; i++)
    {
        row = table.NewRow();
        row["Price"] = i + 1;

        // Be sure to add the new row to the
        // DataRowCollection.
        table.Rows.Add(row);
    }
}
Private Sub MakeTable()
    ' Create a DataTable. 
    Dim table As New DataTable("Product")

    ' Create a DataColumn and set various properties. 
    Dim column As New DataColumn()
    column.DataType = System.Type.GetType("System.Decimal") 
    column.AllowDBNull = False 
    column.Caption = "Price"  
    column.ColumnName = "Price" 
    column.DefaultValue = 25 

    ' Add the column to the table. 
    table.Columns.Add(column) 

    ' Add 10 rows and set values. 
    Dim row As DataRow 
    Dim i As Integer  
    For i = 0 to 9 
        row = table.NewRow() 
        row("Price") = i + 1 

        ' Be sure to add the new row to 
        ' the DataRowCollection. 
        table.Rows.Add(row) 
    Next i 
End Sub

Comentarios

DataColumn es el bloque de creación fundamental para crear el esquema de .DataTable Para compilar el esquema, agregue uno o varios DataColumn objetos a .DataColumnCollection Para obtener más información, vea Agregar columnas a una DataTable.

Cada DataColumn tiene una DataType propiedad que determina el tipo de datos DataColumn que contiene. Por ejemplo, puede restringir el tipo de datos a enteros, cadenas o decimales. Dado que los datos contenidos por se DataTable combinan normalmente en su origen de datos original, debe coincidir los tipos de datos con los del origen de datos. Para obtener más información, consulte Asignaciones de tipos de datos en ADO.NET.

Las propiedades como AllowDBNull, Uniquey ReadOnly ponen restricciones en la entrada y actualización de datos, lo que ayuda a garantizar la integridad de los datos. También puede usar las AutoIncrementpropiedades , AutoIncrementSeedy AutoIncrementStep para controlar la generación automática de datos. Para obtener más información sobre las AutoIncrement columnas, vea Creating AutoIncrement Columns. Para más información, consulte Definir claves principales.

También puede asegurarse de que los valores de un DataColumn objeto son únicos creando y UniqueConstraint agregándolo al ConstraintCollection de al DataTable que pertenece .DataColumn Para más información, vea Restricciones de DataTable.

Para crear una relación entre DataColumn objetos, cree un DataRelation objeto y agréguelo a de DataRelationCollection un DataSetobjeto .

Puede usar la Expression propiedad del DataColumn objeto para calcular los valores de una columna o crear una columna de agregado. Para obtener más información, vea Crear columnas de expresión.

Constructores

DataColumn()

Inicializa una nueva instancia de la DataColumn clase como cadena de tipo.

DataColumn(String)

Inicializa una nueva instancia de la clase DataColumn, como cadena de tipo, utilizando el nombre de columna especificado.

DataColumn(String, Type)

Inicializa una nueva instancia de la clase DataColumn con el nombre de columna y el tipo de datos especificados.

DataColumn(String, Type, String)

Inicializa una nueva instancia de la clase DataColumn con el nombre, el tipo de datos y la expresión especificados.

DataColumn(String, Type, String, MappingType)

Inicializa una nueva instancia de la clase DataColumn con el nombre, el tipo de datos, la expresión y un valor que determina si la columna es un atributo; todos ellos especificados.

Propiedades

AllowDBNull

Obtiene o establece un valor que indica si en esta columna se permiten valores null para las filas que pertenecen a la tabla.

AutoIncrement

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.

AutoIncrementSeed

Obtiene o establece el valor inicial de una columna cuya propiedad AutoIncrement está establecida en true. El valor predeterminado es 0.

AutoIncrementStep

Obtiene o establece el incremento utilizado por una columna cuya propiedad AutoIncrement está establecida en true.

Caption

Obtiene o establece el título de la columna.

ColumnMapping

Obtiene o establece la enumeración MappingType de la columna.

ColumnName

Obtiene o establece el nombre de la columna en el DataColumnCollection.

Container

Obtiene el contenedor del componente.

(Heredado de MarshalByValueComponent)
DataType

Obtiene o establece el tipo de datos almacenados en la columna.

DateTimeMode

Obtiene o establece la propiedad DateTimeMode para la columna.

DefaultValue

Obtiene o establece el valor predeterminado para la columna al crear nuevas filas.

DesignMode

Obtiene un valor que indica si el componente está actualmente en modo de diseño.

(Heredado de MarshalByValueComponent)
Events

Obtiene la lista de controladores de eventos asociados a este componente.

(Heredado de MarshalByValueComponent)
Expression

Obtiene o establece la expresión utilizada para filtrar filas, calcular los valores de una columna o crear una columna agregada.

ExtendedProperties

Obtiene la colección de la información personalizada del usuario asociada a DataColumn.

MaxLength

Obtiene o establece la longitud máxima de una columna de texto.

Namespace

Obtiene o establece el espacio de nombres del objeto DataColumn.

Ordinal

Obtiene la posición de base cero de la columna en la colección DataColumnCollection.

Prefix

Obtiene o establece un prefijo XML que crea alias para el espacio de nombres del objeto DataTable.

ReadOnly

Obtiene o establece un valor que indica si la columna permite cambios justo después de que se haya agregado una fila a la tabla.

Site

Obtiene o establece el sitio del componente.

(Heredado de MarshalByValueComponent)
Table

Obtiene el DataTable al que pertenece la columna.

Unique

Obtiene o establece un valor que indica si los valores de cada fila de la columna deben ser únicos.

Métodos

CheckNotAllowNull()

Este miembro es compatible con la infraestructura de .NET y no está diseñado para utilizarse directamente desde el código.

CheckUnique()

Este miembro es compatible con la infraestructura de .NET y no está diseñado para utilizarse directamente desde el código.

Dispose()

Libera todos los recursos que usa MarshalByValueComponent.

(Heredado de MarshalByValueComponent)
Dispose(Boolean)

Libera los recursos no administrados que usa MarshalByValueComponent y, de forma opcional, libera los recursos administrados.

(Heredado de MarshalByValueComponent)
Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetService(Type)

Obtiene el implementador de IServiceProvider.

(Heredado de MarshalByValueComponent)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
OnPropertyChanging(PropertyChangedEventArgs)

Este miembro es compatible con la infraestructura de .NET y no está diseñado para utilizarse directamente desde el código.

RaisePropertyChanging(String)

Este miembro es compatible con la infraestructura de .NET y no está diseñado para utilizarse directamente desde el código.

SetOrdinal(Int32)

Cambia el ordinal o la posición del objeto DataColumn al ordinal o posición especificados.

ToString()

Obtiene el Expression de la columna, si existe alguno.

Eventos

Disposed

Agrega un controlador de eventos para escuchar el evento Disposed sobre el componente.

(Heredado de MarshalByValueComponent)

Métodos de extensión

GetKeyedService<T>(IServiceProvider, Object)

Obtiene un servicio de tipo T de .IServiceProvider

GetKeyedServices(IServiceProvider, Type, Object)

Obtiene una enumeración de servicios de tipo serviceType de .IServiceProvider

GetKeyedServices<T>(IServiceProvider, Object)

Obtiene una enumeración de servicios de tipo T de .IServiceProvider

GetRequiredKeyedService(IServiceProvider, Type, Object)

Obtiene un servicio de tipo serviceType de .IServiceProvider

GetRequiredKeyedService<T>(IServiceProvider, Object)

Obtiene un servicio de tipo T de .IServiceProvider

CreateAsyncScope(IServiceProvider)

Crea una instancia de AsyncServiceScope que se puede usar para resolver los servicios con ámbito.

CreateScope(IServiceProvider)

Crea una instancia de IServiceScope que se puede usar para resolver los servicios con ámbito.

GetRequiredService(IServiceProvider, Type)

Obtiene el servicio de tipo serviceType de IServiceProvider.

GetRequiredService<T>(IServiceProvider)

Obtiene el servicio de tipo T de IServiceProvider.

GetService<T>(IServiceProvider)

Obtiene el servicio de tipo T de IServiceProvider.

GetServices(IServiceProvider, Type)

Obtiene una enumeración de los servicios de tipo serviceType de IServiceProvider.

GetServices<T>(IServiceProvider)

Obtiene una enumeración de los servicios de tipo T de IServiceProvider.

GetFakeLogCollector(IServiceProvider)

Obtiene el objeto que recopila los registros enviados al registrador falso.

GetFakeRedactionCollector(IServiceProvider)

Obtiene la instancia falsa del recopilador de redactores del contenedor de inserción de dependencias.

Se aplica a

Seguridad para subprocesos

Este tipo es seguro para las operaciones de lectura multiproceso. Debe sincronizar las operaciones de escritura.

Consulte también