我有一个对象 Style
拥有属性(property)StockNumber
.我想过滤所有 Db.Styles
的列表针对 IEnumerable<string> stockNumbers
用户输入搜索。 DB.Styles
是一个 IEnumerable<Style>
.这基本上是我正在尝试做的事情:
public IEnumerable<Style> LoadListOfStyles(IEnumerable<string> stockNumbers)
{
return Db.Styles.Intersect(stockNumbers);
// Need to filter Db.Styles based on stockNumbers
}
那么有没有一种简单的方法来比较Db.Styles
中所有样式的列表?针对我在 stockNumbers
中的搜索值返回仅包含 Styles
的筛选列表用户搜索过?我看到能够做到这一点的唯一方法是让 2 个 IEnumerable 对象相交,但是从搜索到的库存编号中一个一个地加载样式似乎有很多不必要的代码。我想知道是否有更简单的方法。还是我需要使用自己的方法来过滤结果?
最佳答案
return db.Styles.Where(style => stockNumbers.Any(sn => sn == style.StockNumber));
关于c# - 根据 IEnumerable<string> 过滤 IEnumerable<T>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24783277/