首页 > 技术文章 > C#如何获取DataTable中某列的数据类型

Insist-Y 2021-10-12 10:39 原文

在C#的数据表格DataTable的操作中,有时候因为业务需要,我们需要获取到DataTable所有列或者某一列的数据类型,此时我们可以通过DataTable中的Columns属性对象的DataType属性来获取,获取的DataType属性的返回值为Type类型的对象,获取到DataType属性后,即可知道DataTable中该列的数据类型是啥,例如是字符串类型、Int类型等等。

.getType获取到的是DataColumnType类型的。

例如,有个DataTable对象dataDt变量,该DataTable一共含有3列,依次为Id,Name,Memo。如果要获取Name列的数据类型可采用下列程序语句实现:

  1.  
    string DataTypeStr = "";
  2.  
    Type dataType= dataDt.Columns["Name"].DataType;
  3.  
    if (dataType.Name == typeof(String))
  4.  
    {
  5.  
    DataTypeStr = "String";
  6.  
    }
  7.  
    else if (dataType.Name == "Int32")
  8.  
    {
  9.  
    DataTypeStr = "Int32";
  10.  
    }
  11.  
    else
  12.  
    {
  13.  
    //其他数据类型的判断.......
  14.  
    }

通过DataType属性获取的值为Type类型变量,可以通过Type类中的Name属性或者FullName属性来判断具体的数据类型,Name属性为类型的简称,而FullName属性为类型的全称。String数据类型对应的全称FullName为System.String。

推荐阅读