VS2008 - LINQ 基本應用實例

摘要: VS2008 - LINQ 基本應用實例

Visual Studio 2008眾多的新功能中,其中有一項令人注目的新功能就是Language Integrated Query (LINQ),LINQ是一種功能強大的查詢語法(Query Syntax),由於LINQ的出現顛覆了程式設計師對於資料存取的方法,然而我們可透過下面這張圖來了解LINQ的基本結構

0704_rdn_f_25

下面我們就針對LINQ來做基本的應用

透過LINQ取的資料夾內的檔案名稱及大小

Clipboard

static DirectoryInfo dirInfo = new DirectoryInfo(@"H:\");

static void Main(string[] args)
{
    var query =
        from dir in dirInfo.GetFiles()

        select dir.FullName + "          " + dir.Length;

    foreach (string s in query)
    {
        Console.WriteLine(s);
    }
} 

再來把大小於10MB的檔案過濾出來並按照大小排列

Clipboard2

var query =
    from dir in dirInfo.GetFiles()
    where dir.Length > 10000000    //將大小大於10MB的檔案篩選出來
    orderby dir.Length ascending     //將篩選結果依照檔案大小排列  大->小
    select dir.FullName + "          " + dir.Length;

列出副檔名為.rar(壓縮檔)的檔案

Clipboard3

var query =
    from dir in dirInfo.GetFiles()
    where dir.Extension == ".rar"
    select dir.FullName + "          " + dir.Length;

※如果您還想使用到更多功能(Like, DateDiffDay, DateDiffYear...等),可以加入System.Data.Linq.SqlClient命名空間,就會多出一個SqlMethods可以使用。