LINQ(Language Integrated Query)는 데이터 쿼리를 수행하기 위한 강력하고 유연한 도구.
SQL 쿼리와 유사한 구문을 사용하여 배열, 컬렉션, XML,데이터베이스 등의 데이터를 쉽게 처리할 수 있음.
쿼리구문
int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
var evenNumbers = from num in numbers
where num % 2 == 0
select num;
foreach (var num in evenNumbers)
{
Console.WriteLine(num);
}
메서드 구문
var evenNumbers = numbers.Where(num => num % 2 == 0);
foreach (var num in evenNumbers)
{
Console.WriteLine(num);
}
주요 LINQ 연산자
Where
Select
OrderBy
ThenBy
GroupBy
Join
Aggregate
Any
All
First
FirstOrDefault
LINQ 예제
var students = new List<Student>
{
new Student { Name = "Alice", Age = 20 },
new Student { Name = "Bob", Age = 18 },
new Student { Name = "Charlie", Age = 22 }
};
var adultStudents = from student in students
where student.Age >= 20
select new { student.Name, IsAdult = true };
foreach (var student in adultStudents)
{
Console.WriteLine($"{student.Name} is an adult: {student.IsAdult}");
}
var products = new List<Product>
{
new Product { Name = "Apple", Category = "Fruit" },
new Product { Name = "Banana", Category = "Fruit" },
new Product { Name = "Carrot", Category = "Vegetable" }
};
var groupedProducts = from product in products
group product by product.Category into productGroup
select productGroup;
foreach (var group in groupedProducts)
{
Console.WriteLine($"Category: {group.Key}");
foreach (var product in group)
{
Console.WriteLine($" {product.Name}");
}
}
'asp.net' 카테고리의 다른 글
[.net] TempData (0) | 2024.07.19 |
---|---|
[.net] ViewBag (0) | 2024.07.10 |
[.net] mvc 웹 프로젝트(5) (0) | 2024.06.27 |
[.net] mvc 웹 프로젝트(4) (0) | 2024.06.27 |
[.net] mvc 웹 프로젝트(3) (0) | 2024.06.27 |