Auf Englisch lesen

Freigeben über


DataColumn Klasse

Definition

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

public class DataColumn : System.ComponentModel.MarshalByValueComponent
Vererbung

Beispiele

Im folgenden Beispiel wird ein 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);
    }
}

Hinweise

Der DataColumn ist der grundlegende Baustein zum Erstellen des Schemas eines DataTable. Sie erstellen das Schema, indem Sie mindestens ein DataColumn -Objekt zum DataColumnCollectionhinzufügen. Weitere Informationen finden Sie unter Hinzufügen von Spalten zu einer DataTable.

Jede DataColumn verfügt über eine DataType -Eigenschaft, die die Art der enthaltenen Daten DataColumn bestimmt. Beispielsweise können Sie den Datentyp auf ganze Zahlen, Zeichenfolgen oder Dezimalwerte beschränken. Da daten, die in enthalten sind, in der Regel wieder mit der DataTable ursprünglichen Datenquelle zusammengeführt werden, müssen Sie die Datentypen mit denen in der Datenquelle abgleichen. Weitere Informationen finden Sie unter Datentypzuordnungen in ADO.NET.

Eigenschaften wie AllowDBNull, Uniqueund ReadOnly legen Einschränkungen für das Eingeben und Aktualisieren von Daten fest, wodurch die Datenintegrität gewährleistet wird. Sie können auch die Eigenschaften , und AutoIncrementStep verwenden, AutoIncrementSeedum die AutoIncrementautomatische Datengenerierung zu steuern. Weitere Informationen zu AutoIncrement Spalten finden Sie unter Erstellen von AutoIncrement-Spalten. Weitere Informationen finden Sie unter Löschen von Primärschlüsseln.

Sie können auch sicherstellen, dass Werte in einem DataColumn eindeutig sind, indem Sie einen UniqueConstraint erstellen und dem ConstraintCollection hinzufügen, zu dem DataTable das DataColumn gehört. 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 dem DataRelationCollection von hinzu DataSet.

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

Konstruktoren

DataColumn()

Initialisiert eine neue instance 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 Member unterstützt die .NET-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

CheckUnique()

Dieses Member unterstützt die .NET-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

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 Member unterstützt die .NET-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

RaisePropertyChanging(String)

Dieses Member unterstützt die .NET-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

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)

Erweiterungsmethoden

GetKeyedService<T>(IServiceProvider, Object)

Ruft einen Dienst vom Typ T aus ab IServiceProvider.

GetKeyedServices(IServiceProvider, Type, Object)

Ruft eine Enumeration von Diensten vom Typ serviceType ab IServiceProvider.

GetKeyedServices<T>(IServiceProvider, Object)

Ruft eine Enumeration von Diensten vom Typ T ab IServiceProvider.

GetRequiredKeyedService(IServiceProvider, Type, Object)

Ruft einen Dienst vom Typ serviceType aus ab IServiceProvider.

GetRequiredKeyedService<T>(IServiceProvider, Object)

Ruft einen Dienst vom Typ T aus ab IServiceProvider.

CreateAsyncScope(IServiceProvider)

Erstellt eine neue AsyncServiceScope-Schnittstelle, die zum Auflösen von bereichsbezogenen Diensten verwendet werden kann.

CreateScope(IServiceProvider)

Erstellt eine neue IServiceScope-Schnittstelle, die zum Auflösen von bereichsbezogenen Diensten verwendet werden kann.

GetRequiredService(IServiceProvider, Type)

Ruft einen Dienst vom Typ serviceType aus der IServiceProvider-Schnittstelle ab.

GetRequiredService<T>(IServiceProvider)

Ruft einen Dienst vom Typ T aus der IServiceProvider-Schnittstelle ab.

GetService<T>(IServiceProvider)

Ruft einen Dienst vom Typ T aus der IServiceProvider-Schnittstelle ab.

GetServices(IServiceProvider, Type)

Ruft eine Enumeration von Diensten vom Typ serviceType aus der IServiceProvider-Schnittstelle ab.

GetServices<T>(IServiceProvider)

Ruft eine Enumeration von Diensten vom Typ T aus der IServiceProvider-Schnittstelle ab.

GetFakeLogCollector(IServiceProvider)

Ruft das Objekt ab, das Protokolldatensätze sammelt, die an die gefälschte Protokollierung gesendet wurden.

GetFakeRedactionCollector(IServiceProvider)

Ruft den gefälschten Redactorsammler instance aus dem Abhängigkeitsinjektionscontainer ab.

Gilt für:

Produkt Versionen
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Threadsicherheit

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

Weitere Informationen