C#组合查找()

时间:2013-03-25 02:56:31

标签: c# linq find

可以做下面的事吗?

Interaction interaction=interactions.Find(i=>i.day==action.day,i=>i.scene==action.scene);

1 个答案:

答案 0 :(得分:2)

我认为您正在寻找的是:

IEnumerable<Interaction> matchingInteractions = interactions.Where(
    i => (i.day==action.day && i.scene == action.scene)
);

这使用LINQ的Where,它只返回与谓词函数匹配的另一个IEnumerable

或者,有First,它返回与谓词匹配的第一个项目。

Interaction firstInteraction = interactions.First(
    i => (i.day==action.day && i.scene == action.scene)
);

最后,如果您确定只有一个匹配项,则有Single