<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12
        博客園  :: 首頁  :: 新隨筆  :: 聯系 :: 訂閱 訂閱  :: 管理

      C#復習筆記(八)

      Posted on 2010-04-04 03:43  SkyPurple  閱讀(247)  評論(0)    收藏  舉報
      LINQ補充:
      強制立即執行:
      執行聚合函數(Count,Max,Average,First)
      調用ToList(TSource>)或ToArrat(TSource>)方法緩存結果

      使用let擴展范圍變量:(數據源為一個字符串數組)
      var earlyBirdQuery =
          from sentence in strings
          let words = sentence.Split(' ')
          from word in words
          let w = word.ToLower()
          where w[0]=='a||w[0]=='e'||
          w[0]==t
          select word;
      let words = sentence.Split(' ') 創建一個可以查詢自身的可枚舉類型
      let w = word.ToLower() 使查詢只能對范圍變量word調用一次ToLower.如果
      不使用let,則必須在where子句的每個布爾條件中調用ToLwer()
      篩選:
      where cust.City=="London"&&cust.Name=="Devon"
      where cust.City=="London"||cust.City=="paris"
      使用C#邏輯AND和OR運算符來根據需要在Where子句中應用任意數量的篩選表達
      式.
      除了不能是第一個或最后一個子句外,它幾乎可以放在查詢表達式中的任何位置.
      排序:
      在查詢表達式中,orderby子句可以使返回的序列或子序列按升序或降序排序
      可以指定多個鍵,以便執行一個或多個次要排序操作
      默認排序順序為升序
      編譯時,orderby子句被轉換為OrderBy方法的調用.orderby子句中的多個鍵轉換為

      ThenBy方法調用.
      分組:
      group子句返回一個IGrouping(TKey,Telement)對象序列
      編譯時,group子句被轉換為對GroupBy方法的調用.
      var studentQuery1= from student in students
              group student by student.Last[0];

      如果想要對每個組執行附加查詢操作,則可以使用into上下文關鍵字執行一個臨時
      標示符.使用into時,必須繼續編寫該查詢,并最終使用一個select語句或另外一個
      group子句結束該查詢
      var studentQuery2 = from student in students
              group student by student.Last[0] into g
              orderby g.Key
              select g;
      聯接:
      使用join子句可以將 來自不同源序列并且在對象模型中沒有直接關系的元素相關聯
      唯一的要求是每個源中的元素需要共享某個可以進行比較判斷是否相等的值
      join子句使用特殊的equals關鍵字比較指定的鍵是否相等(只支持equals進行判斷)
      三種常見的聯接類型
      內部聯接
      分組聯接
      左外聯接
      內聯:
      var innerJoinQuery = from category in categores
              join prod in products on category.ID equals

      prod.CategoryID select new

      {Productname==prod.Name,Category=category.name};

      分組:含有into 表達式的join子句稱為分組聯接
      var innerJoinQuery = from category in categores
              join prod in products on category.ID equals

      prod.CategoryID into prodGroup select new

      {CategoryName=category.Name, products=prodGroup};

      左外:
      在左外聯接中,將返回左側源序列中的所有元素,即使它們在右側序列中沒有匹配的元

      素也是如此.
      若要在LINQ中執行左外聯接,請將DefaultIfEmpty方法與分組聯接結合起來,以指定

      要在某個左側元素不具有匹配元素時產生的默認右側元素.可以使用 null作為任何引

      用類型的默認值,也可以指定用戶定義的默認類型
      var leftOuterJoinQuery= from category in categories
              join prod in products on category.ID equals

      prod.CategoryID into prodGroup
              from item in prodGroup.DefaultIfEmpty(new

      Product{Name=String.Empty,CategoryID=0}) select new

      {CateName=category.Name,ProdName=item.Name};

      join選擇(投影):
      select 子句可以指定將在執行查詢時產生的值的類型.該子句的結果將基于前面所有

      子句的計算結果以及select子句本身中的所有表達式.
      查詢表達式必須以select子句group子句結束
      在最簡單的情況下,select子句僅指定范圍變量.這會使返回的序列包含與數據源具有

      相同類型的元素.
      主站蜘蛛池模板: 久久精品夜夜夜夜夜久久| 亚洲人精品午夜射精日韩| 久久日产一线二线三线| 无码日韩做暖暖大全免费不卡| 久久夜色精品国产亚洲a| 亚洲成av人片在www鸭子| 亚洲男人第一无码av网| 亚洲国产午夜福利精品| 亚洲色最新高清AV网站| 99久久无色码中文字幕| 国产精品午夜福利合集| 日韩精品一区二区高清视频| 日韩精品人妻av一区二区三区| 人妻内射视频麻豆| 色成人精品免费视频| 精品亚洲国产成人性色av| 久久人人爽人人爽人人av| 国产国拍亚洲精品永久软件| 午夜福利影院不卡影院| 亚洲天堂av日韩精品| 亚洲国产无线乱码在线观看| 国产亚洲欧洲AⅤ综合一区| 欧美精品一产区二产区| 人妻中文字幕亚洲精品| 丰满岳妇乱一区二区三区| 免费无码影视在线观看mov| 一级片一区二区中文字幕| 国产女同一区二区在线| 无码伊人久久大杳蕉中文无码| 日韩国产欧美精品在线 | 综合激情网一区二区三区| 亚洲欧美日韩愉拍自拍美利坚| 激情四射激情五月综合网| 久久人人97超碰人人澡爱香蕉| 粉嫩蜜臀av一区二区三区| 国产精品高清一区二区三区| 在线a人片免费观看| 成人福利一区二区视频在线| 亚洲一区二区中文av| 青青草原网站在线观看| 精品无码国产日韩制服丝袜|