다음 강의 내용으로는 LINQ(Language-Integrated Query)에 대해 알아보도록 하겠습니다.
1. LINQ 소개
LINQ는 C# 언어에 통합된 쿼리 기능을 제공하는 기술입니다. 데이터 소스로부터 데이터를 검색, 조작 및 필터링할 수 있는 강력한 기능을 제공합니다. LINQ는 다양한 데이터 소스와 함께 사용할 수 있으며, 컬렉션, 데이터베이스, XML 등 다양한 데이터 형식에 적용할 수 있습니다.
2. LINQ to Objects
LINQ to Objects는 메모리 내의 컬렉션과 객체에 대한 LINQ 쿼리를 수행하는 방법입니다. LINQ to Objects를 사용하면 컬렉션을 쉽게 쿼리하고 조작할 수 있습니다.
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
// LINQ 쿼리 사용
var evenNumbers = from num in numbers
where num % 2 == 0
select num;
// 결과 출력
foreach (var number in evenNumbers)
{
Console.WriteLine(number);
}
위의 예제에서는 numbers 컬렉션에서 짝수만 필터링하여 evenNumbers 변수에 저장한 후 출력합니다.
3. LINQ to SQL
LINQ to SQL은 데이터베이스와 상호 작용하기 위한 LINQ 구현입니다. 데이터베이스에 저장된 테이블과 쿼리를 작성하여 데이터를 검색하고 조작할 수 있습니다.
// 데이터베이스 컨텍스트 생성
using (var dbContext = new MyDbContext())
{
// LINQ to SQL 쿼리 사용
var customers = from customer in dbContext.Customers
where customer.Age > 30
select customer;
// 결과 출력
foreach (var customer in customers)
{
Console.WriteLine(customer.Name);
}
}
위의 예제에서는 MyDbContext를 사용하여 데이터베이스 컨텍스트를 생성하고, Customers 테이블에서 나이가 30보다 큰 고객을 검색하여 출력합니다.
이처럼 LINQ는 데이터 소스에 대한 간편하고 표현적인 쿼리 작성을 가능하게 합니다. 다양한 LINQ 프로바이더를 활용하여 데이터를 검색, 조작 및 필터링할 수 있습니다.
'C# 정석 진행' 카테고리의 다른 글
C# 파일 입출력 (0) | 2023.05.17 |
---|---|
C# 예외 처리와 예외 처리 기법 (0) | 2023.05.17 |
C# 대리자와 이벤트 (0) | 2023.05.17 |
C# 파일 입출력과 직렬화 (1) | 2023.05.17 |
C# 예외 체인과 사용자 정의 예외 (0) | 2023.05.16 |