English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
LINQ(언어 통합 쿼리)는 다양한 소스와 형식에서 데이터를 검색하는 데 사용되는 C#과 VB.NET의 통합 쿼리 문법입니다. 이는 프로그래밍 언어와 데이터베이스 간의 불일치를 제거하고, 다양한 데이터 소스에 대한 단일 쿼리 인터페이스를 제공합니다.
예를 들어, SQL은 데이터베이스에서 데이터를 저장하고 검색하는 데 사용되는 구조화된 쿼리 언어입니다. 마찬가지로 LINQ는 C#과 VB.NET에 내장된 구조화된 쿼리 문법으로, 다양한 데이터 소스(예: 컬렉션, ADO.Net DataSet, XML 문서, 웹 서비스 및 MS SQL Server 및 다른 데이터베이스)에서 데이터를 검색하는 데 사용됩니다.
LINQ 쿼리는 결과를 객체로 반환합니다. 이를 통해 결과 집합에서 객체 지향적인 메서드를 사용할 수 있으며, 다른 형식의 결과를 객체로 변환하는 것에 대한 고민 없이 사용할 수 있습니다.
아래의 예제는
// 데이터 소스 string[] names = {"Bill", "Steve", "James", "Mohan"}; // LINQ 쿼리 var myLinqQuery = from name in names where name.Contains('a') select name; // 쿼리 실행 foreach(var name in myLinqQuery) Console.Write(name + " ");
위의 예제에서 문자열 배열 이름은 데이터 소스입니다. 아래는 변수 myLinqQuery에 할당된 LINQ 쿼리입니다.
from name in names where name.Contains('a') select name;
위의 쿼리는 LINQ의 쿼리 문법을 사용합니다. 쿼리 문법에 대해 더 알아보려면 '쿼리 문법' 장을 참조하세요.
LINQ 쿼리를 실행하기 전에는 결과를 얻을 수 없습니다. LINQ 쿼리는 여러 가지 방식으로 실행될 수 있으며, 여기서는 myLinqQuery에 저장된 쿼리를 foreach 루프로 실행합니다. foreach 루프는 데이터 소스에 쿼리를 수행하고 결과를 얻은 후, 결과 집합에서 반복적으로 이터레이션합니다.
따라서, 각 LINQ 쿼리는 어떤 데이터 소스를 쿼리해야 하며, 이는 배열, 셋, XML 또는 다른 데이터베이스로 할 수 있습니다. LINQ 쿼리를 작성한 후, 결과를 얻기 위해 실행해야 합니다.
다음 장에서 LINQ를 사용하는 이유를 알아보세요.