c#数据表在字符串数组中添加where条件

本文关键字:添加 where 条件 数组 数据表 字符串 | 更新日期: 2023-09-27 18:16:10

这是我的代码:

DateTime epoch = new DateTime(1970, 1, 1);
            var result = (from row in InBoundtable.AsEnumerable()
                         group row by row.Field <string> ("Date") into grp
                         select new {
                             AbandonCalls = grp.Sum((r) => Double.Parse(r["AvgAbandonedCalls"].ToString())),
                             Date = ((DateTime.Parse(grp.Key)) - epoch).TotalMilliseconds
                         }).ToList();

,其中InBoundtable为数据表。

现在我有一个字符串数组campains

我的问题是有一种方法,所以在上面的选择语句中,我可以使campain字段,这是一个字符串字段,是campains数组中的值之一?

c#数据表在字符串数组中添加where条件

您可以使用Enumerable.Contains("campain value"):

var query =  from row in InBoundtable.AsEnumerable()
             where campains.Contains(row.Field<string>("Campain"))
             group row by row.Field <string> ("Date") into grp
             select new {
                 AbandonCalls = grp.Sum(r => Double.Parse(r["AvgAbandonedCalls"].ToString())),
                 Date = ((DateTime.Parse(grp.Key)) - epoch).TotalMilliseconds
             };
var result = query.ToList();