Часто задаваемые вопросы о LINQ - часть первая
ОГЛАВЛЕНИЕ
Введение и цель
В данном разделе разобраны основы LINQ и показаны 5 основных запросов LINQ, которые всегда нужны в проекте для запросов. Во время изучения основ будет объяснено, какую проблему LINQ решает с позиции бизнес-объектов среднего уровня.
Другие часто задаваемые вопросы о LINQ
Во второй части FAQ-а показаны базовый пример LINQ для SQL, способ определения отношений 1-1 и 1-многие с помощью LINQ, способ оптимизации запросов LINQ, выполнение хранимых процедур с помощью LINQ и простой пример CRUD (создание, чтение, обновление, удаление) с использованием LINQ для SQL (Смотрите FAQ часть II)
Что такое LINQ?
LINQ – единая модель программирования для всех видов доступа к данным. LINQ позволяет запрашивать и обрабатывать данные, независимо от источников данных. Ниже рисунок 'LINQ' показывает, как язык .NET контролирует модель программирования LINQ и единообразно работает со всеми видами источников данных. Это походит на язык запросов, способный запросить любой источник данных и любое преобразование. LINQ также обеспечивает полную безопасность типов и проверку во время компиляции.
LINQ может служить в качестве хорошей сущности для среднего уровня. Поэтому он находится между пользовательским интерфейсом и уровнем доступа к данным.
Рисунок - LINQ
Ниже приведен простой пример LINQ. Имеется коллекция данных ‘objcountries’, к которой LINQ делает запрос с названием страны ‘India’. Коллекция ‘objcountries’ может быть любым источником данных: набор данных, считыватель данных, XML, и т.д. Ниже рисунок ‘фрагмент кода LINQ’ показывает, как ‘ObjCountries’ может быть любым контейнером данных. Затем мы запрашиваем ‘CountryCode’ и проходим в цикле по нему же.
Рисунок - фрагмент кода LINQ