DataColumn Classe

Définition

Représente le schéma d'une colonne dans un DataTable.

public ref class DataColumn : System::ComponentModel::MarshalByValueComponent
public class DataColumn : System.ComponentModel.MarshalByValueComponent
type DataColumn = class
    inherit MarshalByValueComponent
Public Class DataColumn
Inherits MarshalByValueComponent
Héritage

Exemples

L’exemple suivant crée un DataTable avec plusieurs DataColumn objets.

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

Remarques

est DataColumn le bloc de construction fondamental pour créer le schéma d’un DataTable. Vous générez le schéma en ajoutant un ou plusieurs DataColumn objets au DataColumnCollection. Pour plus d’informations, consultez Ajout de colonnes à un DataTable.

Chacune DataColumn a une DataType propriété qui détermine le type de données que contient DataColumn . Par exemple, vous pouvez limiter le type de données à des entiers, des chaînes ou des décimales. Étant donné que les données contenues dans le DataTable sont généralement fusionnées dans sa source de données d’origine, vous devez faire correspondre les types de données à ceux de la source de données. Pour plus d’informations, consultez Mappages de types de données dans ADO.NET.

Des propriétés telles que AllowDBNull, Uniqueet ReadOnly mettent des restrictions sur l’entrée et la mise à jour des données, ce qui contribue à garantir l’intégrité des données. Vous pouvez également utiliser les AutoIncrementpropriétés , AutoIncrementSeedet AutoIncrementStep pour contrôler la génération automatique de données. Pour plus d’informations sur AutoIncrement les colonnes, consultez Création de colonnes d’incréation automatique. Pour plus d’informations, consultez Définition des clés primaires.

Vous pouvez également vous assurer que les valeurs d’un DataColumn sont uniques en créant un UniqueConstraint et en l’ajoutant ConstraintCollection au du DataTable auquel appartient.DataColumn Pour plus d’informations, consultez Contraintes de DataTable.

Pour créer une relation entre DataColumn des objets, créez un DataRelation objet et ajoutez-le DataRelationCollection au d’un DataSet.

Vous pouvez utiliser la Expression propriété de l’objet DataColumn pour calculer les valeurs d’une colonne ou créer une colonne d’agrégation. Pour plus d’informations, consultez Création de colonnes d’expression.

Constructeurs

DataColumn()

Initialise une nouvelle instance de la DataColumn classe en tant que chaîne de type.

DataColumn(String)

Initialise une nouvelle instance de la classe DataColumn, comme chaîne de type, à l'aide du nom de colonne spécifié.

DataColumn(String, Type)

Initialise une nouvelle instance de la classe DataColumn à l'aide du nom de colonne et du type de données spécifiés.

DataColumn(String, Type, String)

Initialise une nouvelle instance de la classe DataColumn à l'aide du nom, du type de données et de l'expression spécifiés.

DataColumn(String, Type, String, MappingType)

Initialise une nouvelle instance de la classe DataColumn à l'aide du nom, du type de données et de l'expression spécifiés, ainsi que d'une valeur qui détermine si la colonne est un attribut.

Propriétés

AllowDBNull

Obtient ou définit une valeur qui indique si les valeurs null sont autorisées dans cette colonne pour les lignes qui appartiennent à la table.

AutoIncrement

Obtient ou définit une valeur qui indique si la colonne incrémente automatiquement la valeur de la colonne pour les nouvelles lignes ajoutées à la table.

AutoIncrementSeed

Obtient ou définit la valeur de départ d'une colonne ayant la valeur true affectée à sa propriété AutoIncrement. La valeur par défaut est 0.

AutoIncrementStep

Obtient ou définit l'incrément utilisé par une colonne ayant la valeur true affectée à sa propriété AutoIncrement.

Caption

Obtient ou définit la légende de la colonne.

ColumnMapping

Obtient ou définit le MappingType de la colonne.

ColumnName

Obtient ou définit le nom de la colonne dans le DataColumnCollection.

Container

Obtient le conteneur du composant.

(Hérité de MarshalByValueComponent)
DataType

Obtient ou définit le type des données stockées dans la colonne.

DateTimeMode

Obtient ou définit le DateTimeMode de la colonne.

DefaultValue

Obtient ou définit la valeur par défaut de la colonne lorsque vous créez de nouvelles lignes.

DesignMode

Obtient une valeur indiquant si le composant est actuellement en mode design.

(Hérité de MarshalByValueComponent)
Events

Obtient la liste des gestionnaires d'événements attachés à ce composant.

(Hérité de MarshalByValueComponent)
Expression

Obtient ou définit l'expression utilisée pour filtrer des lignes, calculer les valeurs d'une colonne ou créer une colonne agrégat.

ExtendedProperties

Obtient la collection d'informations utilisateur personnalisées associée à DataColumn.

MaxLength

Obtient ou définit la longueur maximale d'une colonne de texte.

Namespace

Obtient ou définit l'espace de noms de DataColumn.

Ordinal

Obtient la position (de base zéro) de la colonne dans la collection DataColumnCollection.

Prefix

Obtient ou définit un préfixe XML qui associe un alias à l'espace de noms de DataTable.

ReadOnly

Obtient ou définit une valeur qui indique si la colonne autorise les modifications dès qu'une ligne a été ajoutée à la table.

Site

Obtient ou définit le site du composant.

(Hérité de MarshalByValueComponent)
Table

Obtient le DataTable auquel la colonne appartient.

Unique

Obtient ou définit une valeur qui indique si les valeurs de chaque ligne de la colonne doivent être uniques.

Méthodes

CheckNotAllowNull()

Ce membre prend en charge l’infrastructure .NET. Il n’est pas destiné à être utilisé directement à partir de votre code.

CheckUnique()

Ce membre prend en charge l’infrastructure .NET. Il n’est pas destiné à être utilisé directement à partir de votre code.

Dispose()

Libère toutes les ressources utilisées par MarshalByValueComponent.

(Hérité de MarshalByValueComponent)
Dispose(Boolean)

Libère les ressources non managées utilisées par MarshalByValueComponent et libère éventuellement les ressources managées.

(Hérité de MarshalByValueComponent)
Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetService(Type)

Obtient l'implémenteur du IServiceProvider.

(Hérité de MarshalByValueComponent)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
OnPropertyChanging(PropertyChangedEventArgs)

Ce membre prend en charge l’infrastructure .NET. Il n’est pas destiné à être utilisé directement à partir de votre code.

RaisePropertyChanging(String)

Ce membre prend en charge l’infrastructure .NET. Il n’est pas destiné à être utilisé directement à partir de votre code.

SetOrdinal(Int32)

Remplace l'ordinal ou la position du DataColumn par l'ordinal ou la position spécifié(e).

ToString()

Obtient le Expression éventuel de la colonne.

Événements

Disposed

Ajoute un gestionnaire d'événements pour écouter l'événement Disposed sur le composant.

(Hérité de MarshalByValueComponent)

Méthodes d’extension

GetKeyedService<T>(IServiceProvider, Object)

Obtient un service de type T à partir de IServiceProvider.

GetKeyedServices(IServiceProvider, Type, Object)

Obtient une énumération des services de type serviceType à partir de .IServiceProvider

GetKeyedServices<T>(IServiceProvider, Object)

Obtient une énumération des services de type T à partir de .IServiceProvider

GetRequiredKeyedService(IServiceProvider, Type, Object)

Obtient un service de type serviceType à partir de IServiceProvider.

GetRequiredKeyedService<T>(IServiceProvider, Object)

Obtient un service de type T à partir de IServiceProvider.

CreateAsyncScope(IServiceProvider)

Crée un AsyncServiceScope qui peut être utilisé pour résoudre des services délimités.

CreateScope(IServiceProvider)

Crée un IServiceScope qui peut être utilisé pour résoudre des services délimités.

GetRequiredService(IServiceProvider, Type)

Obtient le service de type serviceType à partir du IServiceProvider.

GetRequiredService<T>(IServiceProvider)

Obtient le service de type T à partir du IServiceProvider.

GetService<T>(IServiceProvider)

Obtient le service de type T à partir du IServiceProvider.

GetServices(IServiceProvider, Type)

Obtient une énumération des services de type serviceType à partir du IServiceProvider.

GetServices<T>(IServiceProvider)

Obtient une énumération des services de type T à partir du IServiceProvider.

GetFakeLogCollector(IServiceProvider)

Obtient l’objet qui collecte les enregistrements de journal envoyés au faux journal.

GetFakeRedactionCollector(IServiceProvider)

Obtient le faux collecteur de redacteurs instance à partir du conteneur d’injection de dépendances.

S’applique à

Cohérence de thread

Ce type est sécurisé pour les opérations de lecture multithread. Vous devez synchroniser toutes les opérations d’écriture.

Voir aussi