我在数据表中有以下数据,这是示例数据。我希望在数据表中出现12,13,因为通常在数据表中会有10到20万行。
Customer | quantity | Product | Code
1 | 3 | Product | 12
2 | 4 | Product | 13
3 | 1 | Product | 12
4 | 6 | Product | 13
答案 0 :(得分:0)
您可以使用Linq-To-DataTable
:
int[] allowedCodes = new []{ 12, 13 };
var rows = table.AsEnumerable()
.Where(r => allowedCodes.Contains(r.Field<int>("Code")));
但是,如果数据表中有10-20万行,则应考虑在数据库中进行过滤。
如果您想知道它们出现的数字:
int count = table.AsEnumerable()
.Count(r => allowedCodes.Contains(r.Field<int>("Code")));
答案 1 :(得分:0)
如何简单for each loop
private int getCount(int yourSearchDigit)
{
int counter = 0;
foreach (DataRow dr in youDataTable.Rows)
{
if (Convert.ToInt32(dr["Code"]) == yourSearchDigit)
counter++;
}
return counter;
}