Columns.Add() vs new DataColumn()
本文关键字:DataColumn new vs Columns Add | 更新日期: 2023-09-27 18:09:39
我对如何在表上插入新列感到困惑,Columns.Add()
和new DataColumn()
之间的区别是什么?
DataTable student = new DataTable("Students");
student.Columns.Add("ID", typeof(int));
DataColumn id = new DataColumn("ID");
id.DataType = typeof(int);
student.Columns.Add(id);
DataColumnCollection.Add
只是创建列和添加它的快捷方式。正如MSDN所说:
创建并添加具有指定名称和的DataColumn对象
它是这样实现的:
public DataColumn Add(string columnName, Type type)
{
DataColumn column = new DataColumn(columnName, type);
this.Add(column);
return column;
}
正如您所看到的,它在内部创建了DataColumn
的新实例并将其添加到自身。
注意:您可以使用DataColumn
构造函数,它接受列数据类型作为第二个参数。因此,第二个示例可能看起来像:
student.Columns.Add(new DataColumn("ID", typeof(int)));
但无论如何,我认为第一个"快捷"选项更易于阅读和紧凑。如果您已经有一些列,或者您有继承自DataColumn
的自定义类型的列,您可能希望使用后一种方法。