当前位置:  开发笔记 > 编程语言 > 正文

DataSet Select不会加起来

如何解决《DataSetSelect不会加起来》经验,为你挑选了1个好方法。

我在数据集上执行多个选择.所有这些选择的总记录数应该与数据集中的记录总数相匹配,但不匹配.(所有选择的总和都少.)我读过.Net 1.1 Select有多个AND条件的错误,但这是VS2005和.Net 2.0.

这是代码:注意:没有填充某些行的类别值.

string Filter;
Filter = "Category = 'HIGH'";
Response.Write("High: " + dslErrors.Tables[0].Select(Filter).GetLength(0).ToString() + "
"); int TotalRecords = dslErrors.Tables[0].Rows.Count; //This is correct Filter = "Category = 'MEDIUM'"; Response.Write("Medium: " + dslErrors.Tables[0].Select(Filter).GetLength(0).ToString() + "
"); Filter = "Category = 'LOW'"; Response.Write("Low Error Count: " + dslErrors.Tables[0].Select(Filter).GetLength(0).ToString() + "
"); Filter = "((Category <> 'HIGH') AND (Category <> 'MEDIUM') AND (Category <> 'LOW'))"; Response.Write("Other: " + dslErrors.Tables[0].Select(Filter).GetLength(0).ToString() + "
");

Welbog.. 7

如果有任何记录,这Categorydbnull,那么他们将不会匹配,并且表达您列出.

我建议将你的姓氏filter改为:

"(
   (
         (Category <> 'HIGH') 
     AND (Category <> 'MEDIUM')
     AND (Category <> 'LOW')
   )
   OR Category IS NULL
)";

它不起作用的原因是因为与dbnull的比较产生了null而不是预期的false.



1> Welbog..:

如果有任何记录,这Categorydbnull,那么他们将不会匹配,并且表达您列出.

我建议将你的姓氏filter改为:

"(
   (
         (Category <> 'HIGH') 
     AND (Category <> 'MEDIUM')
     AND (Category <> 'LOW')
   )
   OR Category IS NULL
)";

它不起作用的原因是因为与dbnull的比较产生了null而不是预期的false.

推荐阅读
郑谊099_448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有