Linq根据字符串数组变量

时间:2018-12-05 18:15:22

标签: c# linq

我有IQuerable的{​​{1}}。

我想编写LINQ语句,该语句将过滤所有颜色在我传递的参数(Gizmo)中的Gizmos。

例如:

string[]

将为我提供一个参数,例如:

public class Gizmo
{
      public string Id { get; set; }

      public string Name { get; set; }

      public virtual ICollection<Color> Colors { get; set; } = new List<Color>();
}

public class Color
{
      public string Id { get; set; }
      public string Value { get; set; } 
}

我想写些类似的东西:

var filterColors = new[] { "red", "silver" };

1 个答案:

答案 0 :(得分:2)

似乎正在寻找:

gizmos = gizmos.Where(x => filterColors.Any(z => x.Colors.Any(e => e.Value == z)));