http://javenstudio.org - C++ Java 分布式 搜索引擎 Naven's Research Laboratory - Thinking of Life, Imagination of Future
(原文:http://blogs.msdn.com/danielfe/archive/category/10786.aspx )
在 2005年9月13日,Anders Hejlsberg 在PDC2005上首次展示了LINQ項目的第一個Demo。(LINQ Project Home: http://msdn.microsoft.com/netframework/future/linq/)
你可能會問 LINQ 究竟是什么?
LINQ,全名叫 Language INtegrated Query,它把查詢(Query)和設(shè)置(set operations)等操作封裝起來,就像.NET語言里如 C# 或 VB 最先實現(xiàn)的 SQL statements 查詢語句一樣。
Query 表達式,也就是你所熟悉并熱衷于使用的 SQL 語法如“from”、“where”和“select”等以及其他 C# 和 VB 里最先實現(xiàn)的查詢語法。不僅如此,Query 表達式還可用于跨應(yīng)用領(lǐng)域查詢數(shù)據(jù)。在下面的例子中,示范如何查詢對象數(shù)據(jù)(Objects),就如同查詢數(shù)據(jù)庫(Database)中的數(shù)據(jù)一樣容易。
用LINQ編寫的代碼是什么樣子呢?
下面的例子示范查詢一個string數(shù)據(jù)列表(list),并返回長度為 5 的 string 數(shù)據(jù)。
程序?qū)⑤敵鋈缦陆Y(jié)果:
LINQ 的奇妙之處在于你可以用它來查詢?nèi)魏螖?shù)據(jù)。下面的例子示范從 SQL Server 2005 中查詢所有 Title 長度為 5 的 Customer 數(shù)據(jù):
Customers 類是一個可以讓你的程序訪問的對應(yīng)于數(shù)據(jù)庫表(table) 結(jié)構(gòu)的自動生成的類。上面代碼的前兩行是建立一個數(shù)據(jù)庫連接并獲取 Customers 表的數(shù)據(jù),下一行是查詢所有 ContactTitle 的字符串長度為 5 的 Customers 并返回其 ContactName 數(shù)據(jù),再輸出到屏幕。
簡單的說,LINQ 可以通過一個統(tǒng)一的標準的方式(類似 SQL 查詢語句)很輕松的訪問任何一種數(shù)據(jù)源。
待續(xù), 譯者Naven 2005-10-20
Powered by: C++博客 Copyright © Javen-Studio