Udostępnij za pośrednictwem


Wyrażenia w zapytaniach składnika LINQ to Entities

Wyrażenie to fragment kodu, który można ocenić na pojedynczą wartość, obiekt, metodę lub przestrzeń nazw. Wyrażenia mogą zawierać wartość literału, wywołanie metody, operator i jego operandy lub prostą nazwę. Proste nazwy mogą być nazwą zmiennej, składowej typu, parametru metody, przestrzeni nazw lub typu. Wyrażenia mogą używać operatorów, które z kolei używają innych wyrażeń jako parametrów lub wywołań metod, których parametry są z kolei innymi wywołaniami metod. W związku z tym wyrażenia mogą wahać się od prostych do bardzo złożonych.

W zapytaniach LINQ to Entities wyrażenia mogą zawierać dowolne elementy dozwolone przez typy w System.Linq.Expressions przestrzeni nazw, w tym wyrażenia lambda. Wyrażenia, które mogą być używane w zapytaniach LINQ to Entities, są nadzbiorem wyrażeń, które mogą służyć do wykonywania zapytań dotyczących platformy Entity Framework. Wyrażenia, które są częścią zapytań względem programu Entity Framework, są ograniczone do operacji obsługiwanych przez ObjectQuery<T> i bazowe źródło danych.

W poniższym przykładzie porównanie w klauzuli Where jest wyrażeniem:

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

Uwaga

Określone konstrukcje języka, takie jak C# unchecked, nie mają znaczenia w linQ to Entities.

W tej sekcji

Wyrażenia stałe

Porównywanie wyrażeń

Porównania wartości Null

Wyrażenia inicjowania

Relacje, właściwości nawigacji i klucze obce

Zobacz też