共用方式為


關於 LINQ 到實體查詢的表達式

表達式是可評估為單一值、物件、方法或命名空間的程式代碼片段。 表達式可以包含常值、方法呼叫、運算元及其作數,或簡單名稱。 簡單名稱可以是變數、類型成員、方法參數、命名空間或類型的名稱。 表達式可以使用運算符,而這些運算符會使用其他表達式作為參數,或者方法呼叫的參數本身也是其他方法呼叫。 因此,表達式的範圍可以從簡單到非常複雜。

在 LINQ to Entities 查詢中,運算式可以包含在 System.Linq.Expressions 命名空間中的類型所允許的任何元素,包括 Lambda 運算式。 可用於 LINQ to Entities 查詢的運算式是可用來查詢 Entity Framework 的運算式超集。 屬於 Entity Framework 查詢一部分的表達式僅限於 ObjectQuery<T> 和基礎數據源所支持的作業。

在下列範例中,子句中的 Where 比較是表達式:

Decimal totalDue = 200;
using (AdventureWorksEntities context = new AdventureWorksEntities())
{
    IQueryable<int> salesInfo =
        from s in context.SalesOrderHeaders
        where s.TotalDue >= totalDue
        select s.SalesOrderID;

    Console.WriteLine("Sales order info:");
    foreach (int orderNumber in salesInfo)
    {
        Console.WriteLine("Order number: " + orderNumber);
    }
}
Dim totalDue = 200
Using context As New AdventureWorksEntities()
    Dim salesInfo = _
        From s In context.SalesOrderHeaders _
        Where s.TotalDue >= totalDue _
        Select s.SalesOrderID

    Console.WriteLine("Sales order info:")
    For Each orderNumber As Integer In salesInfo
        Console.WriteLine("Order number: " & orderNumber)
    Next
End Using

備註

特定語言建構,例如 C# unchecked,在 LINQ to Entities 中沒有任何意義。

本節中

常數表達式

比較表達式

空值比較

初始化表達式

關聯性、導覽屬性和外鍵

另請參閱