LINQ를 사용하여 컬렉션을 처리하는 간결하고 효율적인 C# 코드 예제입니다.
What is LINQ
LINQ(Language Integrated Query)는 쿼리 기능을 C# 언어에 통합하는 기술 집합입니다. LINQ는 .NET 언어에 데이터 쿼리 기능을 추가하는 Microsoft .NET Framework 구성 요소입니다. LINQ 쿼리 식은 SQL 문과 유사하며 친숙한 C# 언어 구문을 많이 사용하므로 쉽게 읽을 수 있습니다.
Codes
Language: C#
Product.cs
public class Product
{
public string Name { get; set; }
public decimal Price { get; set; }
}
C#LinqExample.cs
public class LinqExample
{
public void DisplayProducts(List<product> products, decimal price)
{
var expensiveProducts = products.Where(p => p.Price >= price)
.OrderBy(p => p.Name);
foreach (var product in expensiveProducts)
{
Console.WriteLine($"Product: {product.Name}, Price: {product.Price}");
}
}
}</product>
C#Program.cs
// Create product list
List<Product> products = new()
{
new Product { Name = "Laptop", Price = 1200 },
new Product { Name = "Smartphone", Price = 800 },
new Product { Name = "Tablet", Price = 600 },
new Product { Name = "Monitor", Price = 300 },
new Product { Name = "Keyboard", Price = 50 },
new Product { Name = "Mouse", Price = 25 },
new Product { Name = "Smartwatch", Price = 250 },
new Product { Name = "Headphones", Price = 150 },
new Product { Name = "Speaker", Price = 100 },
new Product { Name = "Camera", Price = 500 }
};
// Create LinqExample instance
LinqExample example = new();
// Call the DisplayProducts method to display products over 500
example.DisplayProducts(products, 500);
C#The beauty of this code lies in:
- Clarity:
LINQ 쿼리는 SQL과 유사하므로 읽고 이해하기가 더 쉽습니다. Where 및 OrderBy 메서드는 각각 필터링과 정렬을 명시적으로 표현합니다. - Simplicity:
LINQ를 사용하면 복잡한 루프나 조건 없이 데이터를 처리할 수 있습니다. 이렇게 하면 코드가 간결해집니다. - Maintenance:
LINQ 쿼리는 수정하기 쉽고 확장성이 뛰어납니다. 필터링 조건이나 정렬 기준을 변경하려면 해당 LINQ 메서드의 인수만 변경하면 됩니다.