• 关于DataTable 判断 列名是否存在的方法中英文符合不区分?


    最近系统出现一个错误,排查了很久,发现判断DataTable 列名是否存在时,发现一个坑,居然不会区分中英文符合。

    有谁知道其中的原理?先记录一下,免得以后忘记这个天坑。

    一. 先初始化一个DataTable.

    DataTable dt = new DataTable();
    
    dt.Columns.Add("(一)", typeof(string));
    dt.Columns.Add("(二)", typeof(string));
    dt.Columns.Add("(三)", typeof(string));
    dt.Columns.Add("(四)", typeof(string));
    
    DataRow dr = dt.NewRow();
    dr[0] = "1";
    dr[1] = "1";
    dr[2] = "1";
    dr[3] = "1";
    
    dt.Rows.Add(dr);

    二. 用dt.Columns.Contains 判断列名是否存在

    Console.WriteLine(dt.Columns.Contains(""));      //false
    Console.WriteLine(dt.Columns.Contains("(一)"));    //true
    Console.WriteLine(dt.Columns.Contains("(一)"));  //true    表面上应该是false

    三. 用dt.Columns的 索引 判断列名是否存在

    Console.WriteLine(dt.Columns[""] == null);     //true
    Console.WriteLine(dt.Columns["(一)"] == null);   //false
    Console.WriteLine(dt.Columns["(一)"] == null); //false  按道理应该是true
  • 相关阅读:
    转载cocos3.17cmake打包
    cocos-lua3.17 Lua tableView工具类
    cocso引擎整体流程
    letCode-1
    letCode-2
    图像语义分割的前世今生
    简要介绍弱监督学*
    win10下乌龟git安装和使用
    STM32F4+Wi-Fi+EDP 向 OneNet 上传数据
    GoogLeNet学习
  • 原文地址:https://www.cnblogs.com/haomo/p/10081954.html
Copyright © 2020-2023  润新知