DataColumn Classe

Definizione

Rappresenta lo schema di una colonna di 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
Ereditarietà

Esempio

Nell'esempio seguente viene creato un DataTable oggetto con diversi DataColumn oggetti .

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

Commenti

è DataColumn il blocco predefinito fondamentale per la creazione dello schema di un oggetto DataTable. Per compilare lo schema, aggiungere uno o più DataColumn oggetti a DataColumnCollection. Per altre informazioni, vedere Aggiunta di colonne a una tabella DataTable.

Ogni DataColumn oggetto ha una DataType proprietà che determina il tipo di dati DataColumn che contiene. Ad esempio, è possibile limitare il tipo di dati a numeri interi, stringhe o decimali. Poiché i dati contenuti da vengono in genere uniti nell'origine DataTable dati originale, è necessario associare i tipi di dati a quelli nell'origine dati. Per altre informazioni, vedere Mapping dei tipi di dati in ADO.NET.

Le proprietà, AllowDBNullad esempio , Uniquee ReadOnly impostano restrizioni per l'immissione e l'aggiornamento dei dati, consentendo così di garantire l'integrità dei dati. È anche possibile usare le AutoIncrementproprietà , AutoIncrementSeede AutoIncrementStep per controllare la generazione automatica dei dati. Per altre informazioni sulle AutoIncrement colonne, vedere Creazione di colonne autoIncrement. Per altre informazioni, vedere Definizione delle chiavi primarie.

È anche possibile assicurarsi che i valori in un DataColumn oggetto siano univoci creando un UniqueConstraint oggetto e aggiungendolo all'oggetto dell'oggetto ConstraintCollectionDataTable a cui appartiene l'oggetto DataColumn . Per altre informazioni, vedere Vincoli DataTable.

Per creare una relazione tra DataColumn oggetti, creare un DataRelation oggetto e aggiungerlo all'oggetto DataRelationCollection di un oggetto DataSet.

È possibile utilizzare la Expression proprietà dell'oggetto DataColumn per calcolare i valori in una colonna o creare una colonna di aggregazione. Per altre informazioni, vedere Creazione di colonne di espressioni.

Costruttori

DataColumn()

Inizializza una nuova istanza della DataColumn classe come stringa di tipo.

DataColumn(String)

Inizializza una nuova istanza della classe DataColumn, come tipo string, utilizzando il nome di colonna specificato.

DataColumn(String, Type)

Inizializza una nuova istanza della classe DataColumn utilizzando il nome di colonna e il tipo di dati specificati.

DataColumn(String, Type, String)

Inizializza una nuova istanza della classe DataColumn con il nome, il tipo di dati e l'espressione specificati.

DataColumn(String, Type, String, MappingType)

Inizializza una nuova istanza della classe DataColumn con il nome, il tipo di dati, l'espressione e il valore che determina se la colonna è un attributo.

Proprietà

AllowDBNull

Ottiene o imposta un valore che indica se i valori null sono consentiti in questa colonna per le righe che appartengono alla tabella.

AutoIncrement

Ottiene o imposta un valore che indica se nella colonna viene incrementato automaticamente il valore della colonna per le nuove righe aggiunte alla tabella.

AutoIncrementSeed

Ottiene o imposta il valore iniziale di una colonna la cui proprietà AutoIncrement è impostata su true. Il valore predefinito è 0.

AutoIncrementStep

Ottiene o imposta l'incremento utilizzato da una colonna con la relativa proprietà AutoIncrement impostata su true.

Caption

Ottiene o imposta la didascalia per la colonna.

ColumnMapping

Ottiene o imposta l'oggetto MappingType della colonna.

ColumnName

Ottiene o imposta il nome della colonna nell'insieme DataColumnCollection.

Container

Ottiene il contenitore del componente.

(Ereditato da MarshalByValueComponent)
DataType

Ottiene o imposta il tipo di dati memorizzato nella colonna.

DateTimeMode

Ottiene o imposta DateTimeMode per la colonna.

DefaultValue

Ottiene o imposta il valore predefinito della colonna durante la creazione di nuove righe.

DesignMode

Ottiene un valore che indica se il componente è in modalità progettazione.

(Ereditato da MarshalByValueComponent)
Events

Ottiene l'elenco dei gestori eventi allegati a questo componente.

(Ereditato da MarshalByValueComponent)
Expression

Ottiene o imposta l'espressione utilizzata per filtrare righe, calcolare i valori di una colonna o creare una colonna aggregata.

ExtendedProperties

Ottiene l'insieme di informazioni utente personalizzate associate a un oggetto DataColumn.

MaxLength

Ottiene o imposta la lunghezza massima di una colonna di testo.

Namespace

Ottiene o imposta lo spazio dei nomi della classe DataColumn.

Ordinal

Ottiene la posizione in base zero della colonna nella raccolta DataColumnCollection.

Prefix

Ottiene o imposta un prefisso XML che rappresenta l'alias dello spazio dei nomi della classe DataTable.

ReadOnly

Ottiene o imposta un valore che indica se la colonna consente modifiche una volta che la riga è stata aggiunta alla tabella.

Site

Ottiene o imposta il sito del componente.

(Ereditato da MarshalByValueComponent)
Table

Ottiene l'oggetto DataTable a cui appartiene la colonna.

Unique

Ottiene o imposta un valore che indica se i valori di ciascuna riga della colonna devono essere univoci.

Metodi

CheckNotAllowNull()

Questo membro supporta l'infrastruttura .NET e non deve essere usato direttamente dal codice.

CheckUnique()

Questo membro supporta l'infrastruttura .NET e non deve essere usato direttamente dal codice.

Dispose()

Rilascia tutte le risorse usate da MarshalByValueComponent.

(Ereditato da MarshalByValueComponent)
Dispose(Boolean)

Rilascia le risorse non gestite usate da MarshalByValueComponent e, facoltativamente, le risorse gestite.

(Ereditato da MarshalByValueComponent)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetService(Type)

Ottiene l'implementatore dell'interfaccia IServiceProvider.

(Ereditato da MarshalByValueComponent)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
OnPropertyChanging(PropertyChangedEventArgs)

Questo membro supporta l'infrastruttura .NET e non deve essere usato direttamente dal codice.

RaisePropertyChanging(String)

Questo membro supporta l'infrastruttura .NET e non deve essere usato direttamente dal codice.

SetOrdinal(Int32)

Modifica l'ordinale o la posizione della classe DataColumn nell'ordinale o nella posizione specificati.

ToString()

Ottiene la proprietà Expression della colonna, se disponibile.

Eventi

Disposed

Aggiunge un gestore evento per restare in attesa dell'evento Disposed sul componente.

(Ereditato da MarshalByValueComponent)

Metodi di estensione

GetKeyedService<T>(IServiceProvider, Object)

Ottiene un servizio di tipo T dall'oggetto IServiceProvider.

GetKeyedServices(IServiceProvider, Type, Object)

Ottiene un'enumerazione dei servizi di tipo serviceType dall'oggetto IServiceProvider.

GetKeyedServices<T>(IServiceProvider, Object)

Ottiene un'enumerazione dei servizi di tipo T dall'oggetto IServiceProvider.

GetRequiredKeyedService(IServiceProvider, Type, Object)

Ottiene un servizio di tipo serviceType dall'oggetto IServiceProvider.

GetRequiredKeyedService<T>(IServiceProvider, Object)

Ottiene un servizio di tipo T dall'oggetto IServiceProvider.

CreateAsyncScope(IServiceProvider)

Crea un nuovo oggetto AsyncServiceScope che è possibile usare per risolvere i servizi con ambito.

CreateScope(IServiceProvider)

Crea un nuovo oggetto IServiceScope che è possibile usare per risolvere i servizi con ambito.

GetRequiredService(IServiceProvider, Type)

Ottiene il servizio di tipo serviceType da IServiceProvider.

GetRequiredService<T>(IServiceProvider)

Ottiene il servizio di tipo T da IServiceProvider.

GetService<T>(IServiceProvider)

Ottiene il servizio di tipo T da IServiceProvider.

GetServices(IServiceProvider, Type)

Ottiene un'enumerazione di servizi di tipo serviceType da IServiceProvider.

GetServices<T>(IServiceProvider)

Ottiene un'enumerazione di servizi di tipo T da IServiceProvider.

GetFakeLogCollector(IServiceProvider)

Ottiene l'oggetto che raccoglie i record di log inviati al logger falso.

GetFakeRedactionCollector(IServiceProvider)

Ottiene l'istanza dell'agente di raccolta redactor falso dal contenitore di inserimento delle dipendenze.

Si applica a

Thread safety

Questo tipo è sicuro per le operazioni di lettura multithreading. È necessario sincronizzare tutte le operazioni di scrittura.

Vedi anche