sing#region using using System; using System.Data; using System.Configuration; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Text; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Collections.Generic; using System.Collections; #endregion
public partial class _Default : System.Web.UI.Page { protectedvoid Page_Load(object sender, EventArgs e) { 用group将集合体分组#region 用group将集合体分组 Response.Write("<hr>用group将集合体分组:<br>"); List<Student> StudentList = GetStudents(); var students1 = from student in StudentList group student by student.Language into studentsgroup select new{Lang=studentsgroup.Key,member=studentsgroup};
foreach (var g in students1) { Response.Write(string.Format("<div class='result'>Language:{0}</div>",g.Lang)); foreach (var student in g.member) { Response.Write(string.Format("<div class='result'>——{0}</div>", student.Name)); } } #endregion
用Distinct将过滤相同项#region 用Distinct将过滤相同项 Response.Write("<hr>用Distinct将过滤相同项:<br>"); var Languages = (from student in StudentList select student.Language) .Distinct();
foreach (var l in Languages) { Response.Write(string.Format("<span class='result'>{0}</span>", l)); } #endregion
用Union连接不同集合体#region 用Union连接不同集合体 Response.Write("<hr>用Union连接不同集合体:<br>"); string[] stringArray ={ "Csharp", "Javascript"}; var Languages2 = (from student in StudentList select student.Language) .Union(stringArray); //Union会自动过滤各集合体中的相同项,无需Distinct foreach (var l in Languages2) { Response.Write(string.Format("<span class='result'>{0}</span>", l)); } #endregion
用Concat连接不同集合体#region 用Concat连接不同集合体 Response.Write("<hr>用Concat连接不同集合体:<br>"); var Languages3 = (from student in StudentList select student.Language) .Concat(stringArray); //Concat不会自动过滤各集合体中的相同项 foreach (var l in Languages3) { Response.Write(string.Format("<span class='result'>{0}</span>", l)); } #endregion