如何通过linq从通用列表中选择一个项目

时间:2012-02-24 16:06:04

标签: c# .net

我有一个LINQ查询,其中包含一个方法GetInstanceForDatabase()

principlesList.Select(p => p.GetInstanceForDatabase()).ToList()

,其中

List<PrincipleInstance>() principlesList = ...
// (contains list of principle like "Manual Trades", "OPM", "Flora")

GetInstanceForDatabase()是一种获取有关原则的所有其他信息的方法(如手工交易)。

我的问题是我只想解决只有“手工交易”的原则。

我想提出where条款。我试过但是失败了。

3 个答案:

答案 0 :(得分:2)

要使用单个项目:

query.First(x => x.property == "Manual Trades");
// or
query.FirstOrDefault(x => x.property == "Manual Trades");

答案 1 :(得分:0)

var list = p.GetInstanceForDatabase().where(x => x.propertyName == "Manual Trades").ToList();

我确定你的GetInstanceForDatabase需要返回你的集合,然后你过滤掉“手工交易”,但我真的无法告诉你如何从问题中得到你的PrincipalInstances列表。

答案 2 :(得分:0)

这是在Where

中使用LINQ的正确语法
principlesList.Select(p => p.GetInstanceForDatabase()).Where(p => p.SomeProperty == "SomeValue").ToList();