DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn(gridColumn1, typeof(bool)));
我本来期望下面这行代码的结果会包含有关DataColumns类型(bool)的信息:
?dt.Columns[0].GetType()
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn(gridColumn1, typeof(bool)));
我本来期望下面这行代码的结果会包含有关DataColumns类型(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
您可以在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()
您可以通过DataTable列的DataType属性来获取列类型,如下所示:
var type = dt.Columns[0].DataType
dt
: DataTable 对象。
0
: DataTable 列索引。
if (dr[dc.ColumnName].GetType().ToString() == "System.DateTime")