DataColumn 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示 DataTable 中的列的架构。
public ref class DataColumn : System::ComponentModel::MarshalByValueComponent
public class DataColumn : System.ComponentModel.MarshalByValueComponent
type DataColumn = class
inherit MarshalByValueComponent
Public Class DataColumn
Inherits MarshalByValueComponent
- 继承
示例
以下示例创建 DataTable 具有多个 DataColumn 对象的 。
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
注解
DataColumn是用于创建 架构DataTable的基本构建基块。 通过将一个或多个 DataColumn 对象添加到 来 DataColumnCollection生成架构。 有关详细信息,请参阅 向 DataTable 添加列。
每个 都有 DataColumn 一个 DataType 属性,用于确定 所包含的数据类型 DataColumn 。 例如,可以将数据类型限制为整数、字符串或小数。 由于 包含 DataTable 的数据通常会合并回其原始数据源,因此必须将数据类型与数据源中的数据类型匹配。 有关详细信息,请参阅 ADO.NET 中的数据类型映射。
、 Unique和 ReadOnly 等AllowDBNull属性对数据的输入和更新施加了限制,从而有助于保证数据完整性。 还可以使用 AutoIncrement、 AutoIncrementSeed和 AutoIncrementStep 属性来控制自动数据生成。 有关列的详细信息 AutoIncrement ,请参阅 Creating AutoIncrement Columns。 有关详细信息,请参阅定义主键。
还可以通过创建 并将其添加到 ConstraintCollection 所属的 的 中DataColumnDataTable,确保 中的值DataColumn是唯一UniqueConstraint的。 有关详细信息,请参阅DataTable 约束。
若要在 对象之间DataColumn创建关系,请创建 一个 DataRelation 对象并将其添加到 DataRelationCollection 的 。DataSet
可以使用 Expression 对象的 属性 DataColumn 计算列中的值,或创建聚合列。 有关详细信息,请参阅 创建表达式列。
构造函数
DataColumn() |
将 类的新实例 DataColumn 初始化为类型字符串。 |
DataColumn(String) |
使用指定的列名称将 DataColumn 类的新实例初始化为类型字符串。 |
DataColumn(String, Type) |
使用指定列名称和数据类型初始化 DataColumn 类的新实例。 |
DataColumn(String, Type, String) |
使用指定的名称、数据类型和表达式初始化 DataColumn 类的新实例。 |
DataColumn(String, Type, String, MappingType) |
使用指定名称、数据类型、表达式和确定列是否为特性的值,初始化 DataColumn 类的新实例。 |
属性
AllowDBNull |
获取或设置一个值,该值指示对于属于该表的行,此列中是否允许空值。 |
AutoIncrement |
获取或设置一个值,该值指示对于添加到该表中的新行,列是否将列的值自动递增。 |
AutoIncrementSeed |
获取或设置其 AutoIncrement 属性设置为 |
AutoIncrementStep |
获取或设置其 AutoIncrement 属性设置为 |
Caption |
获取或设置列的标题。 |
ColumnMapping |
获取或设置列的 MappingType。 |
ColumnName |
获取或设置 DataColumnCollection 中的列的名称。 |
Container |
获取组件的容器。 (继承自 MarshalByValueComponent) |
DataType |
获取或设置存储在列中的数据的类型。 |
DateTimeMode |
获取或设置列的 |
DefaultValue |
在创建新行时获取或设置列的默认值。 |
DesignMode |
获取指示组件当前是否处于设计模式的值。 (继承自 MarshalByValueComponent) |
Events |
获取附加到该组件的事件处理程序的列表。 (继承自 MarshalByValueComponent) |
Expression |
获取或设置表达式,用于筛选行、计算列中的值或创建聚合列。 |
ExtendedProperties |
获取与 DataColumn 相关的自定义用户信息的集合。 |
MaxLength |
获取或设置文本列的最大长度。 |
Namespace |
获取或设置 DataColumn 的命名空间。 |
Ordinal |
获取列在 DataColumnCollection 集合中的位置(从零开始)。 |
Prefix |
获取或设置一个 XML 前缀,该前缀是 DataTable 的命名空间的别名。 |
ReadOnly |
获取或设置一个值,该值指示一旦向表中添加了行,列是否还允许更改。 |
Site |
获取或设置组件的站点。 (继承自 MarshalByValueComponent) |
Table |
获取列所属的 DataTable。 |
Unique |
获取或设置一个值,该值指示列的每一行中的值是否必须是唯一的。 |
方法
CheckNotAllowNull() |
此成员支持 .NET 基础结构,但不能在代码中直接使用。 |
CheckUnique() |
此成员支持 .NET 基础结构,但不能在代码中直接使用。 |
Dispose() |
释放由 MarshalByValueComponent 使用的所有资源。 (继承自 MarshalByValueComponent) |
Dispose(Boolean) |
释放由 MarshalByValueComponent 占用的非托管资源,还可以另外再释放托管资源。 (继承自 MarshalByValueComponent) |
Equals(Object) |
确定指定对象是否等于当前对象。 (继承自 Object) |
GetHashCode() |
作为默认哈希函数。 (继承自 Object) |
GetService(Type) |
获取 IServiceProvider 的实施者。 (继承自 MarshalByValueComponent) |
GetType() |
获取当前实例的 Type。 (继承自 Object) |
MemberwiseClone() |
创建当前 Object 的浅表副本。 (继承自 Object) |
OnPropertyChanging(PropertyChangedEventArgs) |
此成员支持 .NET 基础结构,但不能在代码中直接使用。 |
RaisePropertyChanging(String) |
此成员支持 .NET 基础结构,但不能在代码中直接使用。 |
SetOrdinal(Int32) |
将 DataColumn 的序号或位置更改为指定的序号或位置。 |
ToString() |
获取列的 Expression(如果存在的话)。 |
事件
Disposed |
添加用于侦听组件的 Disposed 事件的事件处理程序。 (继承自 MarshalByValueComponent) |
扩展方法
适用于
线程安全性
此类型对于多线程读取操作是安全的。 必须同步所有写入操作。