Sum - 集合应为数字类型集合,求其和;不延迟
/// <summary>
InBlock.gif         /// Sum - 集合应为数字类型集合,求其和;不延迟
InBlock.gif         /// </summary>
InBlock.gif         void Summary_Sum()
InBlock.gif        {
InBlock.gif                 int i = (from a in _ary
InBlock.gif                                 select a.Length).Sum();
InBlock.gif
InBlock.gif                result.InnerHtml += i.ToString() + "<br />";
InBlock.gif                result.InnerHtml += "<br />";
InBlock.gif        }
 
运行结果
87

Min - 返回集合的最小值;不延迟
/// <summary>
InBlock.gif         /// Min - 返回集合的最小值;不延迟
InBlock.gif         /// </summary>
InBlock.gif         void Summary_Min()
InBlock.gif        {
InBlock.gif                 int i = (from a in _ary
InBlock.gif                                 select a.Length).Min();
InBlock.gif
InBlock.gif                result.InnerHtml += i.ToString() + "<br />";
InBlock.gif                result.InnerHtml += "<br />";
InBlock.gif        }
 
运行结果
2

Max - 返回集合的最大值;不延迟
/// <summary>
InBlock.gif         /// Max - 返回集合的最大值;不延迟
InBlock.gif         /// </summary>
InBlock.gif         void Summary_Max()
InBlock.gif        {
InBlock.gif                 int i = (from a in _ary
InBlock.gif                                 select a.Length).Max();
InBlock.gif
InBlock.gif                result.InnerHtml += i.ToString() + "<br />";
InBlock.gif                result.InnerHtml += "<br />";
InBlock.gif        }
 
运行结果
12

Average - 集合应为数字类型集合,求其平均值;不延迟
/// <summary>
InBlock.gif         /// Average - 集合应为数字类型集合,求其平均值;不延迟
InBlock.gif         /// </summary>
InBlock.gif         void Summary_Average()
InBlock.gif        {
InBlock.gif                 double d = (from a in _ary
InBlock.gif                                        select a.Length).Average();
InBlock.gif
InBlock.gif                result.InnerHtml += d.ToString() + "<br />";
InBlock.gif                result.InnerHtml += "<br />";
InBlock.gif        }
 
运行结果
5.8

Aggregate - 根据输入的表达式获取一个聚合值;不延迟
/// <summary>
InBlock.gif         /// Aggregate - 根据输入的表达式获取一个聚合值;不延迟
InBlock.gif         /// </summary>
InBlock.gif         void Summary_Aggregate()
InBlock.gif        {
InBlock.gif                 // 以下算法的Aggregate相当于Sum
InBlock.gif                 double d = (from a in _ary
InBlock.gif                                        select a.Length).Aggregate((x, y) => x + y);
InBlock.gif
InBlock.gif                result.InnerHtml += d.ToString() + "<br />";
InBlock.gif                result.InnerHtml += "<br />";
InBlock.gif        }
 
运行结果
87

Cast - 将集合转换为强类型集合;延迟
/// <summary>
InBlock.gif         /// Cast - 将集合转换为强类型集合;延迟
InBlock.gif         /// </summary>
InBlock.gif         void Summary_Cast()
InBlock.gif        {
InBlock.gif                ArrayList al = new ArrayList();
InBlock.gif                al.Add( "asp.net");
InBlock.gif                al.Add( "csharp");
InBlock.gif                al.Add( "xhtml");
InBlock.gif
InBlock.gif                var list = al.Cast< string>();
InBlock.gif
InBlock.gif                 foreach ( string s in list)
InBlock.gif                {
InBlock.gif                        result.InnerHtml += s + "<br />";
InBlock.gif                }
InBlock.gif                result.InnerHtml += "<br />";
InBlock.gif        }
 
运行结果
asp.net
csharp
xhtml

DefaultIfEmpty - 查询结果为空则返回默认值;延迟
/// <summary>
InBlock.gif         /// DefaultIfEmpty - 查询结果为空则返回默认值;延迟
InBlock.gif         /// </summary>
InBlock.gif         void Summary_DefaultIfEmpty()
InBlock.gif        {
InBlock.gif                var list = (from a in _ary
InBlock.gif                                        where a.Length > 100
InBlock.gif                                        select a).DefaultIfEmpty( "xxx");
InBlock.gif
InBlock.gif                 foreach ( string s in list)
InBlock.gif                {
InBlock.gif                        result.InnerHtml += s + "<br />";
InBlock.gif                }
InBlock.gif                result.InnerHtml += "<br />";
InBlock.gif        }
 
运行结果
xxx

SequenceEqual - 判断两个集合是否相同;不延迟
/// <summary>
InBlock.gif         /// SequenceEqual - 判断两个集合是否相同;不延迟
InBlock.gif         /// </summary>
InBlock.gif         void Summary_SequenceEqual()
InBlock.gif        {
InBlock.gif                 bool b = (from a in _ary
InBlock.gif                                    where a.Length > 10
InBlock.gif                                    select a).SequenceEqual(from a in _ary
InBlock.gif                                                                                    where a.Length > 10
InBlock.gif                                                                                    select a);
InBlock.gif
InBlock.gif                result.InnerHtml += b.ToString() + "<br />";
InBlock.gif                result.InnerHtml += "<br />";
InBlock.gif        }
 
运行结果
True

OfType - 过滤集合中的指定类型;延迟
InBlock.gif /// <summary>
InBlock.gif         /// OfType - 过滤集合中的指定类型;延迟
InBlock.gif         /// </summary>
InBlock.gif         void Summary_OfType()
InBlock.gif        {
InBlock.gif                 object[] objects = { 1, "a", 2, "b", 3, "c" };
InBlock.gif
InBlock.gif                var list = objects.OfType< string>();
InBlock.gif
InBlock.gif                 foreach ( string s in list)
InBlock.gif                {
InBlock.gif                        result.InnerHtml += s + "<br />";
InBlock.gif                }
InBlock.gif                result.InnerHtml += "<br />";
InBlock.gif        }
 
运行结果
a
b
c

ToArray - 将集合转换为数组;不延迟
/// <summary>
InBlock.gif         /// ToArray - 将集合转换为数组;不延迟
InBlock.gif         /// </summary>
InBlock.gif         void Summary_ToArray()
InBlock.gif        {
InBlock.gif                 string[] ary = (from p in _ctx.Products
InBlock.gif                                                where p.ProductName.Length > 30
InBlock.gif                                                select p.ProductName).ToArray();
InBlock.gif
InBlock.gif                 foreach ( string s in ary)
InBlock.gif                {
InBlock.gif                        result.InnerHtml += s + "<br />";
InBlock.gif                }
InBlock.gif                result.InnerHtml += "<br />";
InBlock.gif        }
 
运行结果
Jack's New England Clam Chowder
Louisiana Fiery Hot Pepper Sauce
Original Frankfurter grüne So?e
Uncle Bob's Organic Dried Pears

ToList - 将集合转换为List<T>集合;不延迟
/// <summary>
InBlock.gif         /// ToList - 将集合转换为List<T>集合;不延迟
InBlock.gif         /// </summary>
InBlock.gif         void Summary_ToList()
InBlock.gif        {
InBlock.gif                var list = (from a in _ary
InBlock.gif                                        where a.Length > 10
InBlock.gif                                        select a).ToList();
InBlock.gif
InBlock.gif                 foreach ( string s in list)
InBlock.gif                {
InBlock.gif                        result.InnerHtml += s + "<br />";
InBlock.gif                }
InBlock.gif                result.InnerHtml += "<br />";
InBlock.gif        }
 
运行结果
silverlight
asp.net ajax

ToDictionary - 将集合转换为<K, V>集合;不延迟
InBlock.gif /// <summary>
InBlock.gif         /// ToDictionary - 将集合转换为<K, V>集合;不延迟
InBlock.gif         /// </summary>
InBlock.gif         void Summary_ToDictionary()
InBlock.gif        {
InBlock.gif                var dic = (from p in _ctx.Products
InBlock.gif                                     where p.ProductName.Length > 30
InBlock.gif                                     select p).ToDictionary(p => p.ProductID);
InBlock.gif
InBlock.gif                 foreach (var p in dic)
InBlock.gif                {
InBlock.gif                        result.InnerHtml += p.Key + ":" + p.Value.ProductName + "<br />";
InBlock.gif                }
InBlock.gif                result.InnerHtml += "<br />";
InBlock.gif        }
 
运行结果
7:Uncle Bob's Organic Dried Pears
41:Jack's New England Clam Chowder
65:Louisiana Fiery Hot Pepper Sauce
77:Original Frankfurter grüne So?e


OK
[×××]