我注意到,当使用数据视图(在C#中)按特定列对数据表中的行进行排序时,排序方法似乎不区分大写和小写字符串。有没有办法按字符串排列数据表的方式,根据字符串的不同,字符串被视为不同?
DataTable Dt18 = new DataTable();
Dt18.Columns.Add("Dosage", typeof(int));
Dt18.Columns.Add("Drug", typeof(string));
Dt18.Rows.Add(0, "Indocin");
Dt18.Rows.Add(1, "indocin");
Dt18.Rows.Add(17, "Indocin");
Dt18.Rows.Add(2, "Hydralazine");
Dt18.Rows.Add(3, "Combivent");
DataView view = new DataView(Dt18);
view.Sort = "Drug asc";
DataTable dtSorted = view.ToTable();
按标题为" Drug"," Indocin"被视为和#34; indocin"
相同答案 0 :(得分:1)
您可以设置Dt18的 CaseSensitive 属性,如下所示:
DataTable Dt18 = new DataTable();
Dt18.Columns.Add("Dosage", typeof(int));
Dt18.Columns.Add("Drug", typeof(string));
Dt18.Rows.Add(0, "Indocin");
Dt18.Rows.Add(1, "indocin");
Dt18.Rows.Add(17, "Indocin");
Dt18.Rows.Add(2, "Hydralazine");
Dt18.Rows.Add(3, "Combivent");
Dt18.CaseSensitive = true;
DataView view = new DataView(Dt18);
view.Sort = "Drug asc";
DataTable dtSorted = view.ToTable();
答案 1 :(得分:0)
设置view.CaseSensitive = false;
如果比较区分大小写,则为true,否则为false。