日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Linq擴(kuò)展方法簡單分析

在向大家詳細(xì)介紹LINQ之前,首先讓大家了解下LINQ是什么,然后全面介紹Linq擴(kuò)展方法。

專注于為中小企業(yè)提供網(wǎng)站設(shè)計(jì)、網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)子長免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了成百上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

LINQ使查詢成為了.NET中頭等的編程概念,被查詢的數(shù)據(jù)可以是XML(LINQ to XML)、Databases(LINQ to SQL、LINQ to Dataset、LINQ to Entities)和對象(LINQ to Objects)。LINQ也是可擴(kuò)展的,允許你建立自定義的LINQ數(shù)據(jù)提供者(比如:LINQ to Amazon、LINQ to NHibernate、LINQ to LDAP)。在這里我會討論C#3.0中的一些新的語言特性和改進(jìn),正是它們使得LINQ變得如此強(qiáng)大~~

Linq擴(kuò)展方法

Linq擴(kuò)展方法可以使你來擴(kuò)展一個已存在的類型,增加它的方法,而無需繼承它或者重新編譯。所以不像為對象寫助手方法,Linq擴(kuò)展方法可以直接是對象自己的一部分。

一個示例,假設(shè)我們想要驗(yàn)證一個string 是不是合法的Email地址,我們可以編寫一個方法,輸入為一個string 并且返回true 或者false 。現(xiàn)在,使用Linq擴(kuò)展方法,我們可以如下這樣做:

 
 
 
  1. public static class MyExtensions {
  2. publicstatic bool IsValidEmailAddress(this strings) {
  3. Regex regex = new
  4. Regex( @"^[w-.]+@([w-]+.)+[w-]{2,4}$");
  5. return
  6. regex.IsMatch(s);
  7. }
  8. }

我們定義了一個帶有靜態(tài)方法的靜態(tài)類。注意,那個靜態(tài)方法在參數(shù)類型string 前面有一個this 關(guān)鍵詞,這會告訴編譯器這個特殊的Linq擴(kuò)展方法會增加給string 類型的對象。于是我們就可以在string 中調(diào)用這個成員方法:

 
 
 
  1. using MyExtensions;
  2. string email = Request.QueryString["email"];
  3. if( email.IsValidEmailAddress() ) {
  4. // ...
  5. }

值得提出的是,LINQ就是使用了System.Linq 命名空間中的Linq擴(kuò)展方法(比如where()、orderby()、select()、sum()、average()等等),而且它定義了標(biāo)準(zhǔn)查詢操作符,可以用來查詢關(guān)系數(shù)據(jù)庫、XML和任何實(shí)現(xiàn)了IEnumerable 接口的.NET對象。


當(dāng)前標(biāo)題:Linq擴(kuò)展方法簡單分析
新聞來源:http://www.dlmjj.cn/article/dhdcihe.html