在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
            {
                //其他数据类型的判断.......
            }

【转载】C#如何获取DataTable中某列的数据类型的更多相关文章

  1. Asp.net 修改已有数据的DataTable中某列的数据类型

    DataTable dt_PI = new DataTable(); //克隆表结构 dt_PI = ds.Tables[].Clone(); dt_PI.Columns["FLTFullP ...

  2. 获取MySql每一列的数据类型和长度默认值等信息

    如何获取MySql表中各个列的数据类型? show columns from tablename 返回结果如下: id    int(11)     NO  PRI         auto_incr ...

  3. 备忘:MySQL中修改表中某列的数据类型、删除外键约束

    -- MySQL中修改表中某列的数据类型 ALTER TABLE [COLUMN] 表名 MODIFY 列名 列定义; -- 删除外键约束 SHOW CREATE TABLE 表名; -- 复制CON ...

  4. 转载: 黄聪:C#中 Excel列字母与数字的转换

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  5. 在 Pandas 中更改列的数据类型

    import pandas as pd import numpy as np a = [['a', '1.2', '4.2'], ['b', '70', '0.03'], ['x', '5', '0' ...

  6. 操作dom获取datatable中的某一行的某一列的数据

    需求描述:编辑的时候,点击的那一行,进入后台的验证方法,验证通过后,再进入编辑页面,进入的时候需要把本行<tr>数据中的某一列<td>的值传递过去 思路表述:之前我想的是,给列 ...

  7. C#中获取DataTable某一列的值转换为集合

    直接使用 //Linqvar l1 = (from d in dt.AsEnumerable() select d.Field<int>("ID")).ToList() ...

  8. 获取DataGridview中某列的所有数据

    /// <summary> /// /// </summary> /// <typeparam name="T"></typeparam& ...

  9. 获取DataTable某一列的所有值

    /// <summary> /// 获取某一列的所有值 /// </summary> /// <typeparam name="T">列数据类型 ...

随机推荐

  1. 201871020225-牟星源《面向对象程序设计(JAVA)》第二周学习总结

    正文: 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-dai ...

  2. ActiveMQ传输协议

    ActiveMQ默认的传输协议是TCP 在activemq的配置文件 /conf/activemq.xml可对配置文件进行修改和查看

  3. RabbitMQ消息确认机制

    文章目录 1. 事务机制2. Confirm模式2.1 生产者2.1.1 普通Confirm模式2.1.2 批量Confirm模式2.1.3 异步Confirm模式2.2 消费者3. 其他 消费者如何 ...

  4. python yield实现协程(生产者-消费者)

    def customer(): r="" while True: n=yield r#,接收生产者的消息,并向消费者发送r print("customer receive ...

  5. 冰多多团队Gamma阶段项目展示

    [冰多多]Gamma项目展示 冰多多项目: 语音coding助手 Gamma阶段目标: 推出一个更加完整的IDE,完善编辑器功能,优化UI 一. 团队成员的简介和个人博客地址 成员 角色 个人博客地址 ...

  6. IBM X3650 m4 面板指示灯

  7. 【06月10日】A股ROE最高排名

    个股滚动ROE = 最近4个季度的归母净利润 / ((期初归母净资产 + 期末归母净资产) / 2). 查看更多个股ROE最高排名 兰州民百(SH600738) - ROE_TTM:86.45% - ...

  8. sql的插入或者修改

    <select id="insertOrUpdateTenantDetail" parameterType="tenantDetailDO"> IN ...

  9. BBC micro:bit引脚介绍

    另外两个大引脚(3V和GND)是非常不同的! 注意 标记为3V和GND的引脚与电路板的电源相关,千万不要连接在一起. 电源输入:如果BBC micro:bit由USB或电池供电,则可以使用3V引脚作为 ...

  10. 国产服务器创建GSCloud实例统计

    1. GSCloud 201909 版本 完整的数据库实例 龙芯上面的瀚高4.3.4.3 数据库实例 安装耗时: 服务器配置: 龙芯3A 四核 .45G 内存8G HDD硬盘 安装耗时: 52min ...