我是LINQ的新手,我想知道是否有办法从字符串列表中提取子列表,因为事先提供了字符串值。
例如,如果我有:
var movies = new List<Movie>
{
new Movie { Name = "Noah" },
new Movie { Name = "Terminator" },
new Movie { Name = "Troy" },
new Movie { Name = "Gladiator" },
};
如果我提供Name字符串“Noah”和“Troy”,我想使用LINQ创建一个子列表。
我尝试了谷歌搜索,结果将我指向SelectMany和GroupBy,但所有示例都涉及包含原始值的列表,而不是包含在对象中的原始值。
答案 0 :(得分:3)
这是你在找什么?
var sublistItems = new List<string>() {"Noah", "Troy"} ;
var subList = movies.where(m=> sublistItems.Contains(m.Name));
答案 1 :(得分:2)
for i in reversed(xrange(n, len(seq), n)):
for j in range(1, n):
pre = b0 + rv1[i] * b1**j + rv5[i] * b2**j + rv22[i] * b3**j + walk[i]
p.append(pre)
i = i - 1
答案 2 :(得分:1)
使用Linq lambda它将是:
var result = movies.where(x => x.Name == "Troy" || x.Name == "Noah");
这将返回IEnumerable<Movie>
,其中包含使用Where
搜索的内容。