DataColumn Constructor (String, Type, String, MappingType)

 

Initializes a new instance of the DataColumn class using the specified name, data type, expression, and value that determines whether the column is an attribute.

Namespace:   System.Data
Assembly:  System.Data (in System.Data.dll)

Public Sub New (
	columnName As String,
	dataType As Type,
	expr As String,
	type As MappingType
)

Parameters

columnName
Type: System.String

A string that represents the name of the column to be created. If set to null or an empty string (""), a default name will be specified when added to the columns collection.

dataType
Type: System.Type

A supported DataType.

expr
Type: System.String

The expression used to create this column. For more information, see the Expression property.

type
Type: System.Data.MappingType

One of the MappingType values.

Exception Condition
ArgumentNullException

No dataType was specified.

The type argument sets the ColumnMapping property. The property specifies how a DataColumn is mapped when a DataSet is transformed into an XML document. For example, if the column is named "fName," and the value it contains is "Bob," and type is set to MappingType.Attribute, the XML element would be as follows:

<Name fName = 'Bob'/>

For more information about how columns are mapped to elements or attributes, see the ColumnMapping property.

The following example constructs a computed column.

Private Sub CreateComputedColumn(ByVal table As DataTable)
    Dim column As DataColumn
    Dim decimalType As System.Type = _
        System.Type.GetType("System.Decimal")

    ' The expression multiplies the "Price" column value by the 
    ' "Quantity" to create the "Total" column.
    Dim expression As String = "Price * Quantity"

    ' Create the column, setting the type to Attribute.
    column = New DataColumn("Total", decimalType, _
        expression, MappingType.Attribute)

    ' Set various properties.
    column.AutoIncrement = False
    column.ReadOnly = True

    ' Add the column to a DataTable object's DataColumnCollection.
    DataSet1.Tables("OrderDetails").Columns.Add(column)
End Sub

.NET Framework
Available since 1.1
Return to top
Show: