1

我正在尝试从列表中获取一组项目。

var sampleDataGroups = SampleDataSource.GetGroups("AllGroups");
var final=sampleDataGroups.Select(p => p.Description.Equals("Test1");

sampleDataGroups获取列表中的所有组。如何优化列表以仅获取Description属性值为“Test1”的那些组?

我试图用 linq 查询来实现这一点var final,但它不起作用。

我想获取描述为“Test1”的所有组。

4

3 回答 3

2

使用 Where 子句将帮助您实现这一目标。此外,您忘记了末尾的右括号。

var final = sampleDataGroups.Where(p => p.Description.Equals("Test1"));
于 2013-10-30T06:22:09.753 回答
2

过滤查询的正确方法是使用该where语句,为其提供您想要的条件,以便仅返回与该条件匹配的那些项目。

试试这个:

var sampleDataGroups = SampleDataSource.GetGroups("AllGroups").where(g=>g.Description=="Test1");

前面的语句意味着只有其描述属性等于的项目Test1才会被返回,而丢弃所有其他项目。

以下链接对您开始使用 LINQ 非常有帮助。

1-基本 LINQ 查询操作 (C#):http: //msdn.microsoft.com/en-us/library/vstudio/bb397927.aspx

2- 来自 MSDN 的文章阐明了where语句使用场景 http://msdn.microsoft.com/en-us/library/bb534803.aspx

于 2013-10-30T06:22:12.743 回答
1

您应该使用声明 Where:

var final=sampleDataGroups.Where(p => p.Description.Equals("Test1");
于 2013-10-30T06:22:35.413 回答