CData ADO.NET Provider for Excel Online 2019J - Online Help

LINQ クエリ

CData ADO.NET Provider for Excel Online 2019J - Build 19.0.7354

このセクションでは、本製品 でサポートされるLINQ クエリの例を示します。

Select およびFilter

次にクエリは、Column2 カラムに"Bob"という値を持つレコードを検索します。

var query = from Test_xlsx_Sheet1 in context.Test_xlsx_Sheet1
            where Test_xlsx_Sheet1.Column2 == "Bob"
            select Test_xlsx_Sheet1;

包含

文字列内の文字列を検索することもできます。次の例は、Column2 カラムに"B" を含む値を持つすべてのTest_xlsx_Sheet1 エンティティを検索します。

var query = from Test_xlsx_Sheet1 in context.Test_xlsx_Sheet1
            where Test_xlsx_Sheet1.Column2.Contains("B")
            select Test_xlsx_Sheet1;

制限

次の例は、返される結果を10個に制限します。

var query = (from Test_xlsx_Sheet1 in context.Test_xlsx_Sheet1
            orderby Test_xlsx_Sheet1.Column2 descending,
            Test_xlsx_Sheet1.Column1 ascending
            select Test_xlsx_Sheet1).Take(10);

並べ替え

次の例は、複数カラムの並べ替えを実行します。結果は、まずId カラムの昇順(デフォルト)に並べ替えられ、次にColumn1 カラムの降順に並べ替えられます。

var query = from Test_xlsx_Sheet1 in context.Test_xlsx_Sheet1;
            orderby Test_xlsx_Sheet1.Id,
                    Test_xlsx_Sheet1.Column1 descending
            select Test_xlsx_Sheet1;                  

カウント

次の例は、指定された条件に一致するすべてのエンティティをカウントします。

int count = (from Test_xlsx_Sheet1 in context.Test_xlsx_Sheet1
             where Test_xlsx_Sheet1.Column2 == "Bob"
             select Test_xlsx_Sheet1).Count();

結合

CData ADO.NET Provider for Excel Online 2019J は標準のLINQ 結合をサポートします。内部結合の例を次に示します。

var CustomerOrdersQuery = from c in context.Spreadsheet1_Customers
                    join o in context.Spreadsheet1_Orders on c.Id equals o.CustomerId
                    select new
                    {
                      Name = c.Name,
                      ItemCount = o.ItemCount,
                      TotalCost =  o.TotalCost,
                      Date =  o.Date
                    };
外部結合の例を次に示します。
var CustomerOrdersQuery = from c in context.Spreadsheet1_Customers
                    join o in context.Spreadsheet1_Orders on c.Id equals o.CustomerId into Inners
                    from od in Inners.DefaultIfEmpty()
                    select new
                    {
                      Name = c.Name,
                      ItemCount = od.ItemCount,
                      TotalCost =  od.TotalCost,
                      Date =  od.Date
                    };

 
 
Copyright (c) 2020 CData Software, Inc. - All rights reserved.
Build 19.0.7354.0