2009-02-10

LINQ初體驗

最近聽到這個名詞LINQ(Language-Integrated Query)
簡單來說:會有這項技術產生,
也是因為現階段查詢語法過於繁雜。

就拿要處理簡單的XML資料來說,
處理資料的方式就有 XPath、XmlDocument物件、XQuery,
或是使用XSLT的方式 就連不同的資料庫,
雖然都是使用SQL語法 但各家廠商都不盡相同。

在這篇文章中提到
http://www.ithome.com.tw/itadm/article.php?c=44337 簡化大量的細節運作:將「如何(How)取得資料」,換成「要操作什麼(What)資料」:這意味著LINQ將存取最佳化交由專家來做,如:由DB引擎來最佳化存取資料。

其實這句話就已經說明了很詳細。 Linq好用的地方,我在此就不在詳述 畢竟依照我小嫩嫩程式的功力 不敢在高手面前耍大刀 我只想紀錄一下第一次使用的心得

首先先定義一個int 陣列

//--自訂一個Int陣列
int[] intArray=new int[]{2,4,5,6,4,2,7,8,8};
StringBuilder sb = new StringBuilder();
 
foreach (int intItem in intArray)
{
   if (intItem>5)
      sb.AppendLine(intItem.ToString());    
}
 
richTextBox1.Text = sb.ToString();



接下來則使用Linq語法查詢

////--利用Linq語法 Where找尋大於5 
 
IEnumerable selectItem = intArray.Where(i => i > 5);
StringBuilder sb = new StringBuilder(selectItem.Count());
 
foreach (int thisInt in selectItem)
{ 
  sb.AppendLine(thisInt.ToString());
}
richTextBox1.Text = sb.ToString();


其實這篇只是簡單的紀錄一下小小心得,
還有很多關於Linq的功能,還得繼續研究下去。

沒有留言:

張貼留言