01net进阶开发版7个专题08课程代码课件09linq表达式_第1页
01net进阶开发版7个专题08课程代码课件09linq表达式_第2页
01net进阶开发版7个专题08课程代码课件09linq表达式_第3页
01net进阶开发版7个专题08课程代码课件09linq表达式_第4页
01net进阶开发版7个专题08课程代码课件09linq表达式_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C#fromwhere根据布尔表达式()selectgroupintojoingroupselectorderbyjoinletusingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingnamespace{class publicstringID{get;set; publicstringCity{get;set; publicstringCountry{get;set; publicstringRegion{get;set; publicdecimalSales{get;set; publicoverridestringToString()//重写ToString(),默认的ToString()仅 return"ID:"+ID+"City:"+City+"Country:"+Country+"Region:"+Region+"Sales:"+Sales; class publicstringID{get;set; publicdecimalAmount{get;set;class /// /// ///<param /// privatestaticint[] otsofNumbers(int Random Randomgenerator=newRandom(1);//使用指定 值初始化Random int[]result=new for(inti=0;i<count; result[i]= return //1. //1.用var关键 //2.指定数据源:from子 //3.指定条件:where子 //5.完成:使用foreach循 staticvoidMain(string[] //string[]names={"Alono","Zheng","Yuan","Song","Hsieh","Small","She","Sza","Sam","Fa","Iyl" ////varqueryResults=fromnin // where orderbyndescending//ordebyn.Substring(n.Length- selectn;//查询语 varqueryResultsnames.OrderBy(nn).Where(nn.StartsWith("S"));//方法语法Lambda表达式 ////varqueryResults=names.OrderByDescending(n=>=> //foreach(varitemin // //int[]numbers= //varqueryResults=fromnin wheren< select //foreach(varitemin ine(queryResults.Max List<Customer>customers=newList<Customer> newCustomer{ID="A",City="NewYork",Country="NorthAmerica",Sales newCustomer{ID="B",City="NewYork",Country="NorthAmerica",Sales newCustomer{ID="C",City="XiAn",Country ="Asia",Sales newCustomer{ID="D",City="New="USA",Region="NorthAmerica",Sales newCustomer{ID="E",City ",Region="Asia",Sales newCustomer{ID="F",City="New="USA",Region="NorthAmerica",Sales //varqueryReaults fromnin wheren.Region== select //foreach(variteminqueryReaults //投影是在LINQ查询中从其他数据类型中创建 //varqueryResults fromcin wherec.Region== selectnew{c.City,c.Country,c.Sales //varqueryResults=customers.Where(c=>c.Region=="Asia").Select(c=>new{c.City,c.Country,c.Sales}); //varqueryResults=customers.Select(c=>new{c.City,c.Country,c.Sales}).Where(c=>c.City=="XiAn"); //foreach(varitemin varqueryResults1=customers.Select(c=> varqueryResults2=(fromcincustomersselectAnyAny和 boolanyUSA=customers.Any(c=>c.Country== if(anyUSA ine("somecustomersarein boolallAsia=customers.All(c=>c.Region== if(allAsia ine("Allcustomersarein //多级多级排 varqueryReaults3 fromnin wheren.Region== orderbyn.Regionn.Countrydescendingn.City级 select varqueryResults4 customers.OrderBy(c=>c.Region).ThenByDescending(c=>c.Country).ThenBy(c=>c.City).Select(c=>new{c.ID,c.Region,c.Country,c.City}); //方法语法排组合查询(组合查询(group字段是 //要计算每个组的总和,应先生成一个新的结果集 varqueryResults5=fromcin groupcbyc.Regioninto selectnew{TotalSales=cg.Sum(c=>c.Sales),Region=cg.Key}; varorderedResults=fromcgin orderbycg.TotalSales select foreach(varitemin ine(item.TotalSales+"\t:"+ TakeTake //Take从查询结果中提取前n个结 //Skip从查询结果中跳过前n个结果 foreach(variteminorderedResults.Take ine(item.TotalSales+"\t:"+FirstFirst和 () //FirstOrDefault当查询条件不满足是使First()则返回 ine(queryReaults3.FirstOrDefault(n=>n.Region==集运集运算 List<Order>orders=new newOrder newOrder{ID="B",Amount newOrder{ID="H",Amount varcustomersIDs=fromcin select varordersIDs=fromoin select varcustomersWithOrders= foreach(varitemincustomersWithOrders ine(item varordersNoCustomers= foreach(variteminordersNoCustomers ine(item varallCustomersOrders= foreach(varitemin //使用Join运算符在一个查询中查找多个集合中的相关数据,用键字段把结果连接起 varqueryResults9 fromcin joinoinordersonc.IDequals selectnew{c.ID,c.City,SalesBefore=c.Sales,NewOrder=o.Amount,SalesAfter=c.Sales+o.Amount}; foreach(variteminqueryResults9 ine(item }into子句作为一个临时标识符,用于groupselectjoin子句中。它了into子句前LINQ语句中使用。namespace{class staticvoidMain(string[] List<GuestInfo>gList=new new Name Name=" Age=="026*-888888**" new Name Name 漩 Age=="017*- new Name Name 巧 Age=="029*- ///姓"肖""董" varquery=fromguestin letg= whereg肖||g董 select foreach(vargin g.Name,g.Age, }joinjoin子句进行关联//////publicclass /// /// publicstringName{get;set; /// 职 /// publicstringTilte{get;set;class staticvoidMain(string[] List<GuestInfo>gList=new new Name Name=" Age=="026*-888888**" new Name Name 漩 Age=="017*- new Name Name 巧 Age=="029*- new Name Name= Age=="089*- List<GuestTitle>titleList=new newGuestTitle{ newGuestTitle{Name=" ",Tilte="金刀汉王 newGuestTitle{Name=" ",Tilte="天下第一丁 newGuestTitleName 漩Tilte出云公主newGuestTitle{Name=巧Tilte酒店newGuestTitle{Name=巧Tilte乖巧人儿 varquery=fromguestin jointitleintitleListonguest.Nameequals selectnew{Name=guest.Name,Title=title.Tilte,Age=guest.Age}; foreach(vargin ine(string.Format("{0} :{2}",g.Name, ine("\n根 varquery2=fromguestin jointitleintitleListonguest.Nameequalstitle.Nameintotgroup selectnew{Name=guest.Name,Titles=tgroup foreach(vargin foreach(varg2in

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论