Udostępnij za pośrednictwem


Wyrażenia kwerend LINQ (Przewodnik programowania w języku C#)

Zapytanie o języku zintegrowanym (LINQ)jest nazwą zestaw technologii, oparty na integracji możliwości kwerendy bezpośrednio w języku C# (również w Visual Basic i potencjalnie wszelkich innych.Język netto).Z LINQ, kwerenda jest teraz konstrukcje językowe biletu, podobnie jak klas, metody, zdarzenia i tak dalej.

Dla kwerend deweloper, który zapisuje, najbardziej widoczna część "language zintegrowane" LINQ jest wyrażenie kwerendy.Wyrażenia kwerendy są zapisywane w declarative składni kwerendy wprowadzone w C# 3.0.Za pomocą składni kwerendy, można wykonać filtrowanie nawet złożone, porządkowaniem i operacji grupowania do źródeł danych, z minimum kodu.Użyj te same wzory wyrażenia podstawowe kwerendy do kwerendy i przekształcania danych w bazach danych SQL, ADO.NET zestawów danych dokumentów XML i strumienie, i.Kolekcje netto.

Operacja pełnej kwerendy można znaleźć w poniższym przykładzie.Zakończenie operacji obejmuje tworzenie źródła danych, Definiowanie wyrażenia kwerendy i wykonywanie kwerendy w foreach instrukcji.

class LINQQueryExpressions
{
    static void Main()
    {

        // Specify the data source. 
        int[] scores = new int[] { 97, 92, 81, 60 };

        // Define the query expression.
        IEnumerable<int> scoreQuery =
            from score in scores
            where score > 80
            select score;

        // Execute the query. 
        foreach (int i in scoreQuery)
        {
            Console.Write(i + " ");
        }            
    }
}
// Output: 97 92 81

Aby uzyskać więcej informacji na temat podstawy LINQ w języku C#, zobacz Wprowadzenie do korzystania z LINQ w C#.

Omówienie wyrażenia kwerendy

  • Wyrażenia w kwerendzie może służyć do kwerendy i przekształcania danych z dowolnego LINQ-włączone źródła danych.Na przykład jednej kwerendzie można pobierać dane z bazy danych SQL i produkują strumienia XML jako danych wyjściowych.

  • Wyrażenia w kwerendzie są łatwe do wzorca, ponieważ używają one wiele znanych konstrukcje języka C#.Aby uzyskać więcej informacji, zobacz Wprowadzenie do korzystania z LINQ w C#.

  • Zmienne w wyrażeniu kwerendy są wszystkie zdecydowanie wpisane, chociaż w wielu przypadkach nie trzeba jawnie Podaj typ, ponieważ kompilator można go rozpoznać.Aby uzyskać więcej informacji, zobacz Relacje typu w operacjach kwerend LINQ (C#).

  • Kwerenda nie jest wykonywana, dopóki iteracyjne zmienna kwerendy w foreach instrukcji.Aby uzyskać więcej informacji, zobacz Wprowadzenie do kwerend LINQ (C#).

  • W czasie kompilacji wyrażenia w kwerendzie są konwertowane na Standard Operator kwerendy wywołania metody zgodnie z zasadami określonymi w specyfikacji języka C#.Dowolny typ kwerendy, która może być wyrażona za pomocą składni kwerendy można również wyrażane za pomocą składni metody.Jednak w większości przypadków składni kwerendy jest bardziej czytelny i zwięzły.Aby uzyskać więcej informacji, zobacz Specyfikacja języka C# i Standardowe operatory zapytań — Omówienie.

  • Jako zasada, gdy piszesz LINQ kwerendy, zalecane użycie składni kwerendy w każdym przypadku, gdy jest to możliwe i składni metody w każdym przypadku, gdy jest to konieczne.Jest nie semantyczne lub wydajności różnica między dwie różne formy.Wyrażenia w kwerendzie są często bardziej czytelny niż równoważne wyrażenia zapisane w składni metody.

  • Niektóre kwerendy operacje, takie jak Count``1 lub Max, mieć żadnej klauzuli wyrażenie kwerendy równoważne i dlatego musi być wyrażona jako wywołanie metody.Metoda składni można łączyć z składni kwerendy na różne sposoby.Aby uzyskać więcej informacji, zobacz Składnia zapytania i metody w technologii LINQ (C#).

  • Wyrażenia w kwerendzie może zostać skompilowany drzew wyrażenie lub delegatów, w zależności od typu zastosowanego do kwerendy.IEnumerablekwerendy są kompilowane do pełnomocników.IQueryablei IQueryable kwerendy są kompilowane do wyrażenia drzewa.Aby uzyskać więcej informacji, zobacz Drzewa wyrażeń (C# i Visual Basic).

Poniższa lista zawiera tematy Pomocy zawierające dodatkowe informacje dotyczące kwerend i przykłady kodu do wykonywania typowych zadań.

Temat

Opis

Podstawowe informacje o wyrażeniach kwerend (Przewodnik programowania w języku C#)

Pojęcia związane z podstawowych kwerendy i przykłady składni kwerendy języka C#.

Porady: zapisywanie kwerend LINQ w C#

Przykłady kilku podstawowych rodzajów wyrażenia w kwerendzie.

Porady: obsługa wyjątków w wyrażeniach kwerend (Przewodnik programowania w języku C#)

W jaki sposób i kiedy należy przenieść potencjalnych rzuca wyjątek kodu poza wyrażenie kwerendy.

Porady: wypełnianie kolekcji Object z wielu źródeł (LINQ)

Jak używać select instrukcji, aby scalić dane z różnych źródeł do nowego typu.

Porady: grupowanie wyników kwerendy (Przewodnik programowania w języku C#)

Przedstawia różne sposoby używania group klauzuli.

Porady: tworzenie grup zagnieżdżonych (Przewodnik programowania w języku C#)

Pokazuje, jak utworzyć grupy zagnieżdżone.

Porady: wykonanie podzapytania w operacji grupowania (Przewodnik programowania w języku C#)

Pokazuje, jak użyć wyrażenia podrzędnego w kwerendzie jako Yródło danych dla nowej kwerendy.

Porady: Grupowanie wyników według ciągłych kluczy (Przewodnik programowania w języku C#)

Pokazuje, jak zaimplementować operatora wielowątkowość standardowej kwerendy, który może wykonywać operacje grupowania na przesyłanie strumieniowe źródeł danych.

Porady: dynamiczne określanie filtrów predykatów w środowisku uruchomieniowym (Przewodnik programowania w języku C#)

Pokazuje, jak dostaw dowolnej liczby wartości mają być w porównaniach równości w where klauzuli.

Porady: przechowywanie wyników kwerendy w pamięci (Przewodnik programowania w języku C#)

Ilustruje sposób zaistniała i przechowywanie wyników kwerendy bez używania niekoniecznie foreach pętli.

Porady: zwracanie kwerendy z metody (Przewodnik programowania w języku C#)

Pokazuje, jak zwrócić zmiennych kwerend z metod i jak je przekazać do metod jako parametrów wejściowych.

Porady: wykonywanie niestandardowych operacji łączenia (Przewodnik programowania w języku C#)

Pokazuje, jak wykonywać operacje join oparte na jakiejkolwiek funkcji predykatu.

Porady: sprzęganie za pomocą kluczy złożonych (Przewodnik programowania w języku C#)

Pokazuje, jak połączyć się z dwóch źródeł na podstawie więcej niż jednego klucza dopasowywania.

Porady: kolejność wyników klauzuli join (Przewodnik programowania w języku C#)

Pokazuje, jak zamówienia sekwencji, który jest wytwarzany przez operację sprzężenia.

Porady: wykonanie sprzężeń wewnętrznych (Przewodnik programowania w języku C#)

Pokazuje, jak wykonać sprzężenie wewnętrzne w LINQ.

Porady: wykonanie sprzężeń grupowanych (Przewodnik programowania w języku C#)

Pokazuje, jak do wyprodukowania zgrupowane sprzężenia w LINQ.

Porady: wykonanie lewych sprzężeń zewnętrznych (Przewodnik programowania w języku C#)

Pokazuje, jak do wyprodukowania lewe sprzężenie zewnętrzne, w LINQ.

Porady: obsługa wartości zerowych w wyrażeniach kwerend (Przewodnik programowania w języku C#)

Pokazuje, jak obsługiwać wartości null w LINQ kwerend.

Zobacz też

Zadania

Wskazówki: pisanie zapytań w C# (LINQ)

Koncepcje

Przewodnik programowania w języku C#

Podstawowe operacje kwerend LINQ (C#)

Składnia zapytania i metody w technologii LINQ (C#)

Standardowe operatory zapytań — Omówienie

Inne zasoby

LINQ (zapytania o języku zintegrowanym)

Słowa kluczowe zapytania (odwołanie w C#)

Jak Linq obiektów kwerend pracy

czytania i pisania kwerend

Co to jest kolekcją?

łącze, aby wszystko: lista dostawców LINQ