c# - LINQ 使用 where 子句循环访问 C# 中的不同数组

标签 c# linq

我想返回 report 中不存在的名称列表。但是我不确定如何正确循环 IEnumerable<string> names使用 LINQ。有没有办法使用 LINQ 循环另一个数组?

    private class Report
        {
            public string UserName { get; set; }
            public string city { get; set; }
            public string image { get; set; }
        }


  List<Report>report = await _service(id).ConfigureAwait(false);
  IEnumerable<string> names = await _names(id).ConfigureAwait(false);

// only want to get list of names that do not exist in report

 var newList = reports.Where(x => x.UserName.Where(i => != names)); // doesn't work

最佳答案

您可以使用Contains方法。尝试如下:

var newList = reports.Where(x => !names.Contains(x.UserName)));

关于c# - LINQ 使用 where 子句循环访问 C# 中的不同数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64503916/

相关文章:

C#/LINQ to SQL - 对来自两个不同结果集的组合结果进行排序

c# - while循环到linq

c# - C# 中的 LINQ SequenceEquals 扩展问题

c# - 为什么我不能在 foreach 循环中设置迭代变量的属性?

c# - 使用 C# Cross Threading 设置标签值

c# - 无论如何完全忽略 Nuget.config

c# - 将日期时间与未指定和 UTC 类型进行比较

c# - 使用 foreach 循环更新 List<T> 并使用 LINQ/LAMBDA 更新条件

c# - 对 Linq 和分组感到困惑

c# - C# 中的 Linq 连接问题