Zapytania w składniku LINQ to Entities

Zapytanie to wyrażenie, które pobiera dane ze źródła danych. Zapytania są zwykle wyrażane w wyspecjalizowanym języku zapytań, takim jak SQL dla relacyjnych baz danych i XQuery dla języka XML. W związku z tym deweloperzy musieli nauczyć się nowego języka zapytań dla każdego typu źródła danych lub formatu danych, który wysyłają zapytania. Zapytanie zintegrowane z językiem (LINQ) oferuje prostsze połączenie tryb namiotu l do pracy z danymi w różnych rodzajach źródeł danych i formatów. W zapytaniu LINQ zawsze pracujesz z obiektami programowania.

Operacja zapytania LINQ składa się z trzech akcji: uzyskiwania źródła danych lub źródeł, tworzenia zapytania i wykonywania zapytania.

Źródła danych, które implementują IEnumerable<T> interfejs ogólny lub IQueryable<T> interfejs ogólny, mogą być odpytywane za pośrednictwem LINQ. Wystąpienia klasy ogólnej ObjectQuery<T> , która implementuje interfejs ogólny IQueryable<T> , służą jako źródło danych dla zapytań LINQ to Entities. Klasa ObjectQuery<T> ogólna reprezentuje zapytanie, które zwraca kolekcję zero lub więcej typionych obiektów. Kompilator może również wywnioskować typ jednostki przy użyciu słowa kluczowego var C# (Dim in Visual Basic).

W zapytaniu określisz dokładnie informacje, które chcesz pobrać ze źródła danych. Zapytanie może również określać sposób sortowania, grupowania i kształtowania informacji przed ich zwróceniem. W linQ zapytanie jest przechowywane w zmiennej. Jeśli zapytanie zwraca sekwencję wartości, sama zmienna kwerendy musi być typem z możliwością wykonywania zapytań. Ta zmienna kwerendy nie wykonuje żadnej akcji i nie zwraca żadnych danych; przechowuje tylko informacje o kwerendzie. Po utworzeniu zapytania należy wykonać to zapytanie, aby pobrać dowolne dane.

Składnia zapytań

Zapytania LINQ to Entities mogą składać się z dwóch różnych składni: składni wyrażenia zapytania i składni zapytań opartej na metodzie. Składnia wyrażeń zapytań jest nowa w języku C# 3.0 i Visual Basic 9.0. Składa się z zestawu klauzul napisanych w składni deklaratywnej podobnej do języka Transact-SQL lub XQuery. Jednak środowisko uruchomieniowe języka wspólnego programu .NET Framework (CLR) nie może odczytać samej składni wyrażenia zapytania. W związku z tym w czasie kompilacji wyrażenia zapytania są tłumaczone na coś, co clR rozumie: wywołania metody. Te metody są nazywane standardowymi operatorami zapytań. Jako deweloper masz możliwość bezpośredniego wywoływania ich przy użyciu składni metody zamiast składni zapytania. Aby uzyskać więcej informacji, zobacz Składnia zapytań i składnia metody w LINQ.

Składnia wyrażenia zapytania

Wyrażenia zapytań to deklaratywna składnia zapytania. Ta składnia umożliwia deweloperowi pisanie zapytań w języku wysokiego poziomu, który jest sformatowany podobnie do języka Transact-SQL. Korzystając ze składni wyrażeń zapytania, można wykonywać nawet złożone operacje filtrowania, porządkowania i grupowania źródeł danych przy minimalnym kodzie. Aby uzyskać więcej informacji, zobacz Podstawowe operacje zapytań (Visual Basic). Przykłady demonstrujące sposób używania składni wyrażenia zapytania można znaleźć w następujących tematach:

Składnia zapytań oparta na metodzie

Innym sposobem tworzenia zapytań LINQ to Entities jest użycie zapytań opartych na metodzie. Składnia zapytania oparta na metodzie jest sekwencją wywołań metod bezpośrednich do metod operatorów LINQ, przekazując wyrażenia lambda jako parametry. Aby uzyskać więcej informacji, zobacz Wyrażenia lambda. Przykłady demonstrujące sposób używania składni opartej na metodach można znaleźć w następujących tematach:

Zobacz też