获取数据表列数据类型

本文关键字:数据类型 数据表 获取 | 更新日期: 2023-09-27 18:27:30

DataTable dt = new DataTable();  
dt.Columns.Add(new DataColumn(gridColumn1, typeof(bool)));

我希望以下行的结果包含有关数据列类型(布尔值(的信息:

?dt.Columns[0].GetType()

获取数据表列数据类型

您要使用此属性:

dt.Columns[0].DataType

DataType属性将设置为以下值之一:

Boolean
Byte
Char
DateTime
Decimal
Double
Int16
Int32
Int64
SByte
Single
String
TimeSpan
UInt16
UInt32
UInt64

DataColumn.DataType 属性 MSDN 参考

您始终可以在 if 语句中使用typeof。这比使用像 Natarajan 的答案这样的字符串值要好。

using System.Data;
if (dt.Columns[0].DataType == typeof(DateTime))
{
    //...
}

或使用列名:

if (dt.Columns["yourColumnName"].DataType == typeof(DateTime))
{
    //...
}
dt.Columns[0].DataType.Name.ToString()

您可以使用数据表列的数据类型属性获取数据表的列类型,如下所示:

var type = dt.Columns[0].DataType

dt:数据表对象。

0:数据表列索引。

if (dr[dc.ColumnName].GetType().ToString() == "System.DateTime")