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

例如,有个datatable对象datadt变量,该datatable一共含有3列,依次为id,name,memo。如果要获取name列的数据类型可采用下列程序语句实现:

string datatypestr = "";
            type datatype= datadt.columns["name"].datatype;
            if (datatype.name == "string")
            {
                datatypestr = "string";
            }
            else if (datatype.name == "int32")
            {
                datatypestr = "int32";
            }
            else
            {
                //其他数据类型的判断.......
            }

通过datatype属性获取的值为type类型变量,可以通过type类中的name属性或者fullname属性来判断具体的数据类型,name属性为类型的简称,而fullname属性为类型的全称。string数据类型对应的全称fullname为system.string。

 

备注:原文转载自博主个人站it技术小趣屋,原文链接为c#如何获取datatable中某列的数据类型_it技术小趣屋。

博主个人技术交流群:960640092,博主微信公众号如下:

string datatypestr = “”;
            type datatype= datadt.columns[“name”].datatype;
            if (datatype.name == “string”)
            {
                datatypestr = “string”;
            }
            else if (datatype.name == “int32”)
            {
                datatypestr = “int32”;
            }
            else
            {
                //其他数据类型的判断…….
            }