zoukankan      html  css  js  c++  java
  • DataTable添加列时容易被忽略的问题!

    我们经常用到DataTable.Columns.Add("ColumnsName"),久而久之形成了一种思维,当然也知道可以设置数据值类型,但经常可以忽略,因为没有什么影响.今天我就碰到这个问题,因为没有设置数据类型,出现了BUG
    BUG出现的情况说明:
    刚开始,用DataTable.Columns.Add("ColumnsName"),方式添加了列
    我添加的列中有3行数据,分别为 12 ,14 ,7,添加行数据时,我用 Decimal 数据类型添加的.
    然后我筛选数据,取出最大最小值,用表的DefaultView.Sort方法(默认排序,从小到大)
    1DataView ViewTableName = 表名.DefaultView;
    2ViewTableName.Sort = "列名"
    3string strMin = ViewTableName[0]..Row["列名"].ToString();  
    4string strMan = ViewTableName[表名.Rows.Count-1]..Row["列名"].ToString();  
    调试时,发现ViewTableName行变成了7,14,12. 我郁闷:( ,不知道那的问题,刚开始认为是sort的问题,可是我改成了Desc排序,又变成了12,14,7 ,我晕倒.真在纳闷呢,看到flyingchen在线上,请教了一下,他认为是数据类型的问题.我仔细看看,在添加列时,并没有加上类型,因为以前经常用,认为没有什么关系.
    所以我重新修改了添加列
    1表名.Columns.Add("列名",System.Type.GetType("System.Decimal"));
    然后再次排序,终于出现了7,12,14 了. 多谢flyingchen了.
  • 相关阅读:
    如何让create-react-app锦上添花,满足实际需求?
    《漫画算法》笔记-下篇
    《漫画算法》笔记-上篇
    react + typescript 学习
    node http 模块 常用知识点记录
    vue 相关技术文章集锦
    读后感:数据结构与算法JavaScript描述
    css 揭秘-读书笔记
    vue-textarea 自适应高度
    消除浏览器对input的自动填充
  • 原文地址:https://www.cnblogs.com/zjy/p/489494.html
Copyright © 2011-2022 走看看