共用方式為


常數運算式

常數運算式是由常數值所組成。常數值會直接轉換成常數命令樹運算式,而不需在用戶端上進行任何轉譯。其中包括產生常數值的運算式。因此,所有牽涉到常數的運算式應該都會有資料來源行為。這樣可能會產生與 CLR 行為不同的行為。

下列範例會顯示在伺服器上評估的常數運算式。

Using AWEntities As New AdventureWorksEntities()
    Dim sales As ObjectQuery(Of SalesOrderHeader) = AWEntities.SalesOrderHeader

    Dim salesInfo = _
        From s In sales _
        Where s.TotalDue >= 200 + 3 _
        Select s.SalesOrderNumber

    Console.WriteLine("Sales order numbers:")
    For Each orderNum As String In salesInfo
        Console.WriteLine(orderNum)
    Next
End Using
using (AdventureWorksEntities AWEntities = new AdventureWorksEntities())
{
    ObjectQuery<SalesOrderHeader> sales = AWEntities.SalesOrderHeader;

    IQueryable<string> salesInfo =
        from s in sales
        where s.TotalDue >= 200 + 3
        select s.SalesOrderNumber;

    Console.WriteLine("Sales order numbers:");
    foreach (string orderNum in salesInfo)
    {
        Console.WriteLine(orderNum);
    }
}

LINQ 到實體 不支援使用使用者類別當做常數。但是,使用者類別上的屬性參考會視為常數,而且將會轉換成命令樹常數運算式,並在資料來源上執行。

另請參閱

概念

LINQ to Entities 查詢中的運算式