zoukankan      html  css  js  c++  java
  • 关于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
  • 相关阅读:
    冲刺二6
    冲刺二5
    6月1日团队开发日志
    5月31日团队开发日志
    5月30日团队开发日志
    5月29日团队开发日志
    5月28日团队开发日志
    5月27日团队开发日志
    5月26日团队开发日志
    5月25日团队开发日志
  • 原文地址:https://www.cnblogs.com/haomo/p/10081954.html
Copyright © 2011-2022 走看看