DataColumn Klasse

Definition

Stellt das Schema einer Spalte in einer Datentabelle (DataTable) dar.

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

Beispiele

Im folgenden Beispiel wird eine DataTable mit mehreren DataColumn Objekten erstellt.

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

Hinweise

Das DataColumn ist der grundlegende Baustein zum Erstellen des Schemas eines .DataTable Sie erstellen das Schema, indem Sie einem oder mehreren DataColumn Objekten das DataColumnCollectionSchema hinzufügen. Weitere Informationen finden Sie unter Hinzufügen von Spalten zu einer DataTable.

Jeder DataColumn verfügt über eine DataType Eigenschaft, die die Art der enthaltenen Daten DataColumn bestimmt. Sie können beispielsweise den Datentyp auf ganze Zahlen oder Zeichenfolgen oder Dezimalstellen beschränken. Da Daten, die von der ursprünglichen Datenquelle enthalten sind, in der DataTable Regel wieder in ihre ursprüngliche Datenquelle zusammengeführt werden, müssen Sie die Datentypen mit denen in der Datenquelle übereinstimmen. Weitere Informationen finden Sie unter "Datentypzuordnungen" in ADO.NET.

Eigenschaften wie AllowDBNull, , Uniqueund setzen Einschränkungen für den Eintrag und ReadOnly die Aktualisierung von Daten, wodurch die Datenintegrität gewährleistet wird. Sie können auch die automatischen Datengenerierung mit AutoIncrementStep den AutoIncrementEigenschaften und AutoIncrementSeedEigenschaften steuern. Weitere Informationen zu AutoIncrement Spalten finden Sie unter Erstellen von AutoIncrement-Spalten. Weitere Informationen finden Sie unter Definieren von Primärschlüsseln.

Sie können auch sicherstellen, dass Werte in einem DataColumn Eindeutigen sind, indem Sie sie UniqueConstraint erstellen und zu dem ConstraintCollection DataTable DataColumn der gehörten hinzufügen. Weitere Informationen finden Sie unter DataTable-Einschränkungen.

Um eine Beziehung zwischen DataColumn Objekten zu erstellen, erstellen Sie ein DataRelation Objekt, und fügen Sie es zu DataRelationCollection einem DataSet.

Sie können die Eigenschaft des DataColumn Objekts verwenden, um die Expression Werte in einer Spalte zu berechnen oder eine Aggregatspalte zu erstellen. Weitere Informationen finden Sie unter Erstellen von Ausdrucksspalten.

Konstruktoren

DataColumn()

Initialisiert eine neue Instanz der DataColumn Klasse als Typzeichenfolge.

DataColumn(String)

Initialisiert eine neue Instanz der DataColumn-Klasse als type-Zeichenfolge und unter Verwendung des angegebenen Spaltennamens.

DataColumn(String, Type)

Initialisiert eine neue Instanz der DataColumn-Klasse unter Verwendung des angegebenen Spaltennamens und Datentyps.

DataColumn(String, Type, String)

Initialisiert eine neue Instanz der DataColumn-Klasse unter Verwendung des angegebenen Namens, Datentyps und Ausdrucks.

DataColumn(String, Type, String, MappingType)

Initialisiert eine neue Instanz der DataColumn-Klasse unter Verwendung des angegebenen Namens, Datentyps, Ausdrucks und des Werts, der bestimmt, ob es sich bei der Spalte um ein Attribut handelt.

Eigenschaften

AllowDBNull

Ruft einen Wert ab, der angibt, ob in dieser Spalte für die zur Tabelle gehörenden Zeilen NULL-Werte zulässig sind, oder legt diesen fest.

AutoIncrement

Ruft einen Wert ab, der angibt, ob der Wert der Spalte für neu zur Tabelle hinzugefügte Zeilen in der Spalte automatisch erhöht wird, oder legt diesen fest.

AutoIncrementSeed

Ruft den Anfangswert für eine Spalte ab, deren AutoIncrement-Eigenschaft auf true festgelegt ist, oder legt diesen fest. Die Standardeinstellung ist 0.

AutoIncrementStep

Ruft die Schrittweite ab, die von einer Spalte verwendet wird, deren AutoIncrement-Eigenschaft auf true festgelegt ist, oder legt diese fest.

Caption

Ruft die Beschriftung für die Spalte ab, oder legt diese fest.

ColumnMapping

Ruft den MappingType der Spalte ab oder legt ihn fest.

ColumnName

Ruft den Namen der Spalte in der DataColumnCollection ab oder legt diesen fest.

Container

Ruft den Container für die Komponente ab.

(Geerbt von MarshalByValueComponent)
DataType

Ruft den Typ der in der Spalte gespeicherten Daten ab oder legt diesen fest.

DateTimeMode

Ruft den DateTimeMode für die Spalte ab oder legt diesen fest.

DefaultValue

Ruft beim Erstellen neuer Zeilen den Standardwert für die Spalte ab oder legt diesen fest.

DesignMode

Ruft einen Wert ab, der angibt, ob sich die Komponente gegenwärtig im Entwurfsmodus befindet.

(Geerbt von MarshalByValueComponent)
Events

Ruft die Liste der an diese Komponente angefügten Ereignishandler ab.

(Geerbt von MarshalByValueComponent)
Expression

Ruft den Ausdruck ab, mit dem Zeilen gefiltert, die Werte in einer Spalte berechnet oder eine Aggregatspalte erstellt werden, oder legt diesen fest.

ExtendedProperties

Ruft die Auflistung der benutzerdefinierten Benutzerinformationen ab, die einer DataColumn zugeordnet ist.

MaxLength

Ruft die maximale Länge einer Textspalte ab oder legt diese fest.

Namespace

Ruft den Namespace der DataColumn ab oder legt diesen fest.

Ordinal

Ruft die nullbasierte Position der Spalte in der DataColumnCollection Auflistung ab.

Prefix

Ruft ein XML-Präfix ab, das als Alias für den Namespace der DataTable fungiert, oder legt dieses fest.

ReadOnly

Ruft einen Wert ab, der angibt, ob die Spalte nach dem Hinzufügen einer Zeile zur Tabelle Änderungen zulässt, oder legt diesen fest.

Site

Ruft die Site der Komponente ab oder legt sie fest.

(Geerbt von MarshalByValueComponent)
Table

Ruft die DataTable ab, zu der die Spalte gehört.

Unique

Ruft einen Wert ab, der angibt, ob die Werte in allen Zeilen der Spalte eindeutig sein müssen, oder legt diesen fest.

Methoden

CheckNotAllowNull()

Dieses Mitglied unterstützt die .NET-Infrastruktur und soll nicht direkt aus Ihrem Code verwendet werden.

CheckUnique()

Dieses Mitglied unterstützt die .NET-Infrastruktur und soll nicht direkt aus Ihrem Code verwendet werden.

Dispose()

Gibt alle vom MarshalByValueComponent verwendeten Ressourcen frei.

(Geerbt von MarshalByValueComponent)
Dispose(Boolean)

Gibt die von MarshalByValueComponent verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.

(Geerbt von MarshalByValueComponent)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetService(Type)

Ruft die Implementierung von IServiceProvider ab.

(Geerbt von MarshalByValueComponent)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
OnPropertyChanging(PropertyChangedEventArgs)

Dieses Mitglied unterstützt .NET-Infrastruktur und soll nicht direkt von Ihrem Code verwendet werden.

RaisePropertyChanging(String)

Dieses Mitglied unterstützt die .NET-Infrastruktur und soll nicht direkt aus Ihrem Code verwendet werden.

SetOrdinal(Int32)

Ändert die Ordnungszahl oder Position der DataColumn in die angegebene Ordnungszahl oder Position.

ToString()

Ruft den Expression der Spalte ab, sofern ein solcher vorhanden ist.

Ereignisse

Disposed

Fügt einen Ereignishandler hinzu, der auf das Disposed-Ereignis für die Komponente lauscht.

(Geerbt von MarshalByValueComponent)

Gilt für:

Threadsicherheit

Dieser Typ ist für Multithread-Lesevorgänge sicher. Sie müssen alle Schreibvorgänge synchronisieren.

Siehe auch