Linq entity framework


Download 121.59 Kb.
bet3/4
Sana28.10.2023
Hajmi121.59 Kb.
#1730044
1   2   3   4
Bog'liq
linq entity framework

Выполнение запроса


После создания пользователем запроса LINQ он преобразуется в представление, совместимое с Entity Framework (в виде дерева команд), которое затем выполняется для источника данных. Во время выполнения запроса все выражения (или компоненты) этого запроса вычисляются на клиенте либо на сервере. Это относится и к выражениям, используемым для материализации результатов и для проекции сущностей. Дополнительные сведения см. в разделе Выполнение запроса. Сведения о том, как повысить производительность, скомпилируя запрос один раз, а затем выполняя его несколько раз с разными параметрами, см. в разделе Скомпилированные запросы (LINQ to Entities).

Материализация


Материализацией называется процесс возвращения результатов запроса клиенту в виде типов CLR. В LINQ to Entities результаты запроса никогда не возвращаются в виде записей данных. Для этого всегда используется базовый тип CLR, который был определен пользователем или платформой Entity Framework или создан компилятором (анонимный тип). Вся материализация объектов проводится платформой Entity Framework. Все ошибки, вызванные невозможностью сопоставления между платформой Entity Framework и средой CLR, вызовут создание исключений во время материализации объекта.

Запросы LINQ - to - Entities в Entity Framework


В этой статье я собираюсь обсудить запросы LINQ - to - Entities в Entity Framework. Пожалуйста, прочтите нашу предыдущую статью, где мы обсуждали различные подходы к выполнению запросов в Entity Framework. Мы собираемся работать с тем же примером, который мы создали в нашей первой статье Введение в базу данных Entity FrameworkПожалуйста, прочтите нашу статью введение в базу данных Entity Framework First, прежде чем перейти к этой статье.
Запросы LINQ-to-Entities

В этой статье я покажу вам, как писать запросы LINQ-to-Entities и получать результат в Entity Framework. Пожалуйста, посетите наши учебные пособия по LINQ, чтобы шаг за шагом изучить LINQ в деталях.
Класс DbSet Entity Framework является производным от интерфейса IQuerayable. Поскольку класс DbSet является производным от интерфейса IQuerayable, мы можем использовать LINQ (Language Integrated Query) для выполнения запросов к DbSet, а DbSet затем преобразует запросы в SQL-запросы, которые базовая база данных может понять и выполнить, и получает результирующий набор, преобразует его в объекты соответствующего типа entity и возвращает как результат запроса.
Что такое LINQ?

LINQ (Language Integrated Query) является частью языка, но не завершенным языком. Он был представлен Microsoft с .NET Framework 3.5 и C # 3.0 и доступен в системе.Пространство имен Linq.
LINQ предоставляет нам общий синтаксис запроса, который позволяет нам запрашивать данные из различных источников данных. Это означает, что с помощью одного запроса мы можем получить или задать данные из различных источников данных, таких как база данных SQL Server, XML-документы, ADO.NET Наборы данных и любые другие объекты в памяти, такие как коллекции, обобщения и т.д. Для лучшего понимания того, как работает LINQ, пожалуйста, ознакомьтесь со статьей "Архитектура LINQ".
Что такое проекция?

Проекция - это не что иное, как механизм, который используется для выбора данных из источника данных. Вы можете выбрать данные в той же форме (т. Е. исходные данные в их исходном состоянии). Также возможно создать новую форму данных, выполнив над ней некоторые операции. Например, давайте предположим, что в таблице базы данных есть столбец "Зарплата". Если вы хотите, вы можете получить значения столбца Salary такими, какие они есть, то есть в их первоначальном виде. Но, если вы хотите изменить значения столбца зарплата, добавив бонусную сумму 10000, то это также возможно. Если на данный момент это непонятно, то не волнуйтесь, мы разберемся с примерами в реальном времени.
Операторы запросов LINQ:

Стандартные методы запросов LINQ реализованы как методы расширения, и эти методы могут использоваться с запросами LINQ-to-Entities. Ниже приведены примеры некоторых стандартных методов запроса LINQ.


  1. Download 121.59 Kb.

    Do'stlaringiz bilan baham:
1   2   3   4




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling