1、简单的例子
代码
class
SelectSample1
{
static void Main()
{
// Create the data source
List < int > Scores = new List < int > () { 97 , 92 , 81 , 60 };
// Create the query.
IEnumerable < int > queryHighScores =
from score in Scores
where score > 80
select score;
// Execute the query.
foreach ( int i in queryHighScores)
{
Console.Write(i + " " );
}
}
}
{
static void Main()
{
// Create the data source
List < int > Scores = new List < int > () { 97 , 92 , 81 , 60 };
// Create the query.
IEnumerable < int > queryHighScores =
from score in Scores
where score > 80
select score;
// Execute the query.
foreach ( int i in queryHighScores)
{
Console.Write(i + " " );
}
}
}
2、集合序列化:
代码
private
XElement SerializeDesignerItems(IEnumerable
<
DesignerItem
>
designerItems)
{
XElement serializedItems = new XElement( " DesignerItems " ,
from item in designerItems
let contentXaml = XamlWriter.Save(((DesignerItem)item).Content)
select new XElement( " DesignerItem " ,
new XElement( " Left " , Canvas.GetLeft(item)),
new XElement( " Top " , Canvas.GetTop(item)),
new XElement( " Width " , item.Width),
new XElement( " Height " , item.Height),
new XElement( " ID " , item.ID),
new XElement( " zIndex " , Canvas.GetZIndex(item)),
new XElement( " IsGroup " , item.IsGroup),
new XElement( " ParentID " , item.ParentID),
new XElement( " Content " , contentXaml)
)
);
return serializedItems;
}
{
XElement serializedItems = new XElement( " DesignerItems " ,
from item in designerItems
let contentXaml = XamlWriter.Save(((DesignerItem)item).Content)
select new XElement( " DesignerItem " ,
new XElement( " Left " , Canvas.GetLeft(item)),
new XElement( " Top " , Canvas.GetTop(item)),
new XElement( " Width " , item.Width),
new XElement( " Height " , item.Height),
new XElement( " ID " , item.ID),
new XElement( " zIndex " , Canvas.GetZIndex(item)),
new XElement( " IsGroup " , item.IsGroup),
new XElement( " ParentID " , item.ParentID),
new XElement( " Content " , contentXaml)
)
);
return serializedItems;
}
3、下面的示例演示了 select 子句可能采用的所有不同形式。在每个查询中,请注意 select 子句和查询变量(studentQuery1、studentQuery2 等)的类型之间的关系。