次の方法で共有


DataColumn コンストラクタ (String, Type, String, MappingType)

指定した名前、データ型、式、およびこの列が属性かどうかを決定する値を使用して、DataColumn クラスの新しいインスタンスを初期化します。

名前空間: System.Data
アセンブリ: System.Data (system.data.dll 内)

構文

'宣言
Public Sub New ( _
    columnName As String, _
    dataType As Type, _
    expr As String, _
    type As MappingType _
)
'使用
Dim columnName As String
Dim dataType As Type
Dim expr As String
Dim type As MappingType

Dim instance As New DataColumn(columnName, dataType, expr, type)
public DataColumn (
    string columnName,
    Type dataType,
    string expr,
    MappingType type
)
public:
DataColumn (
    String^ columnName, 
    Type^ dataType, 
    String^ expr, 
    MappingType type
)
public DataColumn (
    String columnName, 
    Type dataType, 
    String expr, 
    MappingType type
)
public function DataColumn (
    columnName : String, 
    dataType : Type, 
    expr : String, 
    type : MappingType
)

パラメータ

  • columnName
    作成する列の名前を表す文字列。null 参照 (Visual Basic では Nothing) または空の文字列 ("") に設定した場合は、列コレクションに追加するときに既定の名前が指定されます。
  • dataType
    サポートされる DataType
  • expr
    この列の作成に使用される式。詳細については、Expression プロパティのトピックを参照してください。

例外

例外の種類 条件

ArgumentNullException

dataType が指定されませんでした。

解説

引数 type は ColumnMapping プロパティを設定します。このプロパティは、DataSet を XML ドキュメントに変換した場合に DataColumn を変換する方法を指定します。たとえば、この列に "fName" という名前が指定され、値 "Bob" が格納されていて、type が MappingType.Attribute に設定されている場合、この列の XML 要素は次のようになります。

<Name fName = 'Bob'/>

列を要素または属性に変換する方法の詳細については、ColumnMapping プロパティのトピックを参照してください。

使用例

計算列を作成する例を次に示します。

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
private void CreateComputedColumn(DataTable table)
{
    System.Type myDataType = 
        System.Type.GetType("System.Decimal");

    // The expression multiplies the "Price" column value 
    // by the "Quantity" to create the "Total" column.
    string expression = "Price * Quantity";

    // Create the column, setting the type to Attribute.
    DataColumn column = new DataColumn("Total", myDataType, 
        expression, MappingType.Attribute);

    // Set various properties.
    column.AutoIncrement = false;
    column.ReadOnly = true;

    // Add the column to a DataTable object's to DataColumnCollection.
    DataSet1.Tables["OrderDetails"].Columns.Add(column);
}

プラットフォーム

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 2.0、1.1、1.0

.NET Compact Framework

サポート対象 : 2.0、1.0

参照

関連項目

DataColumn クラス
DataColumn メンバ
System.Data 名前空間
ColumnName
ColumnMapping
Caption
DefaultValue
DataTable
DataType