DataColumn Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa o esquema de uma coluna em um DataTable.
public ref class DataColumn : System::ComponentModel::MarshalByValueComponent
public class DataColumn : System.ComponentModel.MarshalByValueComponent
type DataColumn = class
inherit MarshalByValueComponent
Public Class DataColumn
Inherits MarshalByValueComponent
- Herança
Exemplos
O exemplo a seguir cria um DataTable com vários 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
Comentários
O DataColumn é o bloco de construção fundamental para criar o esquema de um DataTable. Você cria o esquema adicionando um ou mais DataColumn objetos ao DataColumnCollection. Para obter mais informações, consulte Adicionando colunas a um DataTable.
Cada DataColumn um tem uma DataType propriedade que determina o tipo de dados que o DataColumn contém. Por exemplo, você pode restringir o tipo de dados a inteiros, cadeias de caracteres ou decimais. Como os DataTable dados contidos pelo normalmente são mesclados novamente em sua fonte de dados original, você deve corresponder os tipos de dados aos da fonte de dados. Para obter mais informações, consulte Mapeamentos de tipo de dados no ADO.NET.
Propriedades como AllowDBNull, Uniquee ReadOnly colocam restrições na entrada e atualização de dados, ajudando assim a garantir a integridade dos dados. Você também pode usar as AutoIncrementpropriedades , AutoIncrementSeede AutoIncrementStep para controlar a geração automática de dados. Para obter mais informações sobre AutoIncrement colunas, consulte Criando colunas de autoincremento. Para obter mais informações, consulte Definir chaves primárias.
Você também pode garantir que os valores em um DataColumn sejam exclusivos criando um UniqueConstraint e adicionando-o ConstraintCollection ao do DataTable ao qual o DataColumn pertence. Para obter mais informações, consulte Restrições de DataTable.
Para criar uma relação entre DataColumn objetos, crie um DataRelation objeto e adicione-o ao DataRelationCollection de um DataSet.
Você pode usar a Expression propriedade do DataColumn objeto para calcular os valores em uma coluna ou criar uma coluna de agregação. Para obter mais informações, consulte Criando colunas de expressão.
Construtores
DataColumn() |
Inicializa uma nova instância da classe como cadeia DataColumn de caracteres de tipo. |
DataColumn(String) |
Inicializa uma nova instância da classe DataColumn, como cadeia de caracteres de tipo, usando o nome de coluna especificado. |
DataColumn(String, Type) |
Inicializa uma nova instância da classe DataColumn usando a o nome da coluna e o tipo de dados especificados. |
DataColumn(String, Type, String) |
Inicializa uma nova instância da classe DataColumn usando o nome do parâmetro, o tipo de dados e a expressão especificados. |
DataColumn(String, Type, String, MappingType) |
Inicializa uma nova instância da classe DataColumn usando o nome especificado, o tipo de dados, a expressão e o valor que determina se a coluna é um atributo. |
Propriedades
AllowDBNull |
Obtém ou define um valor que indica se valores nulos são permitidos nesta coluna para linhas que pertencem à tabela. |
AutoIncrement |
Obtém ou define um valor que indica se a coluna incrementa automaticamente o valor da coluna para novas linhas adicionadas à tabela. |
AutoIncrementSeed |
Obtém ou define o valor inicial de uma coluna que tem a propriedade AutoIncrement definida como |
AutoIncrementStep |
Obtém ou define o incremento usado por uma coluna com sua propriedade AutoIncrement definida como |
Caption |
Obtém ou define a legenda da coluna. |
ColumnMapping |
Obtém ou define o MappingType da coluna. |
ColumnName |
Obtém ou define o nome da coluna no DataColumnCollection. |
Container |
Obtém o contêiner para o componente. (Herdado de MarshalByValueComponent) |
DataType |
Obtém ou define o tipo dos dados armazenados na coluna. |
DateTimeMode |
Obtém ou define o |
DefaultValue |
Obtém ou define o valor padrão para a coluna ao criar novas linhas. |
DesignMode |
Obtém um valor que indica se o componente está atualmente no modo de design. (Herdado de MarshalByValueComponent) |
Events |
Obtém a lista de manipuladores de eventos que estão anexados a este componente. (Herdado de MarshalByValueComponent) |
Expression |
Obtém ou define a expressão usada para filtrar linhas, calcular os valores em uma coluna ou criar uma coluna de agregação. |
ExtendedProperties |
Obtém a coleção de informações de usuário personalizadas associadas a um DataColumn. |
MaxLength |
Obtém ou define o tamanho máximo de uma coluna de texto. |
Namespace |
Obtém ou define o namespace do DataColumn. |
Ordinal |
Obtém a posição (de base zero) da coluna na coleção DataColumnCollection. |
Prefix |
Obtém ou define um prefixo XML que cria o alias do namespace do DataTable. |
ReadOnly |
Obtém ou define um valor que indica se a coluna permite alterações assim que uma linha tiver sido adicionada à tabela. |
Site |
Obtém ou define o site do componente. (Herdado de MarshalByValueComponent) |
Table |
Obtém o DataTable ao qual a coluna pertence. |
Unique |
Obtém ou define um valor que indica se os valores em cada linha da coluna devem ser exclusivos. |
Métodos
CheckNotAllowNull() |
Este membro dá suporte à infraestrutura .NET e não se destina a ser usado diretamente do código. |
CheckUnique() |
Este membro dá suporte à infraestrutura .NET e não se destina a ser usado diretamente do código. |
Dispose() |
Libera todos os recursos usados pelo MarshalByValueComponent. (Herdado de MarshalByValueComponent) |
Dispose(Boolean) |
Libera os recursos não gerenciados usados pelo MarshalByValueComponent e opcionalmente libera os recursos gerenciados. (Herdado de MarshalByValueComponent) |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetService(Type) |
Obtém o implementador do IServiceProvider. (Herdado de MarshalByValueComponent) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
OnPropertyChanging(PropertyChangedEventArgs) |
Este membro dá suporte à infraestrutura .NET e não se destina a ser usado diretamente do código. |
RaisePropertyChanging(String) |
Este membro dá suporte à infraestrutura .NET e não se destina a ser usado diretamente do código. |
SetOrdinal(Int32) |
Altera o ordinal ou a posição do DataColumn para o ordinal ou a posição especificada. |
ToString() |
Obtém o Expression da coluna, se houver. |
Eventos
Disposed |
Adiciona um manipulador de eventos para escutar o evento Disposed no componente. (Herdado de MarshalByValueComponent) |
Métodos de Extensão
Aplica-se a
Acesso thread-safe
Este tipo é seguro para operações de leitura e multithread. Você deve sincronizar todas as operações de gravação.