Linq entity framework
Создание экземпляра ObjectQuery
Download 121.59 Kb.
|
linq entity framework
- Bu sahifa navigatsiya:
- Составление запросов
- Преобразование запросов
Создание экземпляра ObjectQueryУниверсальный класс ObjectQuery Составление запросовЭкземпляры универсального класса ObjectQuery Создание запросов LINQ to Entities может производиться с использованием синтаксиса выражений запросов или синтаксиса запросов на основе методов. Синтаксические конструкции выражения запроса и запроса на основе методов впервые появились в версиях языков C# 3.0 и Visual Basic 9.0. Дополнительные сведения см. в статье Запросы в LINQ to Entities. Преобразование запросовДля выполнения запроса в технологии LINQ to Entities на платформе Entity Framework запрос LINQ нужно преобразовать в дерево команд, которое можно выполнить на платформе Entity Framework. LINQ to Entities запросы состоят из стандартных операторов запросов LINQ (напримерSelect, , Whereи GroupBy) и выражений (x > 10, Contact.LastName и т. д.). Операторы LINQ не определяются классом, а являются методами класса. В LINQ выражения могут содержать любые конструкции, допустимые для типов в пределах пространства имен System.Linq.Expressions, а по расширению - любые конструкции, которые могут быть представлены лямбда-функциями. Это надмножество выражений, допустимых для платформы Entity Framework, множество которых по определению ограничено допустимыми операциями над базой данных и поддерживается посредством ObjectQuery На платформе Entity Framework и операторы, и выражения представляются одной иерархией типов, которая затем помещается в дерево команд. Дерево команд используется платформой Entity Framework для выполнения запроса. Если запрос LINQ не удается выразить в виде дерева команд, при преобразовании запроса будет создано исключение. Преобразование запросов LINQ to Entities включает два промежуточных преобразования - стандартных операторов запросов и выражений. Для ряда стандартных операторов запроса LINQ не существует допустимых эквивалентов в технологии LINQ to Entities. Попытки использования этих операторов приведут к возникновению исключения в процессе перевода запроса. Список поддерживаемых операторов LINQ to Entities см. в разделе Поддерживаемые и неподдерживаемые методы LINQ (LINQ to Entities). Дополнительные сведения об использовании стандартных операторов запросов в LINQ to Entities см. в статье Стандартные операторы запросов в запросах LINQ to Entities. Как правило, выражения технологии LINQ to Entities вычисляются на сервере, поэтому нельзя ожидать, что поведение выражений будет соответствовать семантике среды CLR. Дополнительные сведения см. в разделе Выражения в запросах LINQ to Entities. Сведения о том, как вызовы методов CLR сопоставляются с каноническими функциями в источнике данных, см. в статье Сопоставление методов CLR с каноническими функциями. Сведения о том, как вызывать канонические функции, функции базы данных и пользовательские функции из LINQ to Entities запросов, см. в статье Вызов функций в запросах LINQ to Entities. Download 121.59 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling