使用Linq获得精致的设置

时间:2013-10-30 06:19:39

标签: c# linq visual-studio-2012

我想从列表中获取一组项目。

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

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

我尝试使用var final中的linq查询来实现此目的,但它无效。

我希望得到描述为“Test1”的所有组。

3 个答案:

答案 0 :(得分:2)

使用Where子句将帮助您实现此目的。另外,你忘记了最后的结束括号。

var final = sampleDataGroups.Where(p => p.Description.Equals("Test1"));

答案 1 :(得分: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

答案 2 :(得分:1)

您应该使用声明Where:

var final=sampleDataGroups.Where(p => p.Description.Equals("Test1");