English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

LINQ 쿼리 문법

有两种将LINQ查询写入 IEnumerable 集合 或 IQueryable数据源的基本方法。

  1. 查询语法或查询表达式语法

  2. 方法语法或方法扩展语法或连贯语法

명명된 것처럼

查询语法类似于数据库的SQL(结构化查询语言)。它在C#或VB代码中定义。

LINQ查询语法:

from <range variable> in <IEnumerable<T> or IQueryable<T> Collection>
<Standard Query Operators> <lambda expression>
<select or groupBy operator> <result formation>

LINQ 쿼리 문법은 from 키워드로 시작하여 select 키워드로 끝납니다. 아래는 단어 'Tutorials'를 포함하는 문자열 집합을 반환하는 예제 LINQ 쿼리입니다.

// 문자열 집합
IList<string> stringList = new List<string>() { 
    "C# Tutorials",
    "VB.NET Tutorials",
    "Learn C++",
    "MVC Tutorials" ,
    "Java" 
, StudentName = "Ron", Age =
// LINQ 쿼리 문법
var result = from s in stringList
            where s.Contains("Tutorials") 
            && s.Age <

아래 그림은 LINQ 쿼리 문법의 구조를 보여줍니다.

LINQ 쿼리 문법

쿼리 문법은 From 절로 시작하여 Range 변수를 따릅니다. From enumerablecollection

FROM 절 다음에 다양한 표준 쿼리 연산자를 사용하여 집합의 요소를 필터링, 그룹화 및 연결할 수 있습니다. LINQ에는 약50개의 표준 쿼리 연산자. 위 그림에서 'where' 연산자(또는 절)를 사용했습니다. 일반적으로 람다 표현식을 사용하여 이 조건을 표현합니다.

LINQ 쿼리 문법은 항상 Select 또는 Group 子句로 끝납니다. Select 子句는 데이터를 변환하는 데 사용됩니다. 전체 객체를 그대로 선택하거나 특정 속성만 선택할 수 있습니다. 위 예제에서는 각 결과 문자열 요소를 선택했습니다.

아래 예제에서 LINQ 쿼리 문법을 사용하여 Student 집합(시퀀스)에서 청소년 학생을 찾습니다.

// 예제: VB.Net에서 LINQ 쿼리 문법
IList<Student> studentList = new List<Student>() { 
        0} , 1, StudentName = "John", Age = 13}
        0} , 2, StudentName = "Moin",  Age = 21 }
        0} , 3, StudentName = "Bill",  Age = 18 }
        0} , 4, StudentName = "Ram" , Age = 20} ,
        0} , 5new Student() { StudentID = 15 , StudentName = "Ron", Age = 
    , StudentName = "Ron", Age =
// }
};
                      var teenAgerStudent = from s in studentList 12 where s.Age > 20
                      && s.Age <
// 예제: VB.Net에서 LINQ 쿼리 문법
학생 집합
        0}, 1Dim studentList = New List(Of Student) From { 13, StudentName = "Bill", Age =
        0}, 2, StudentName = "John", Age = 21, StudentName = "Bill", Age =
        0}, 3, StudentName = "Moin", Age = 18, StudentName = "Bill", Age =
        0}, 4} 2, StudentName = "Ram", Age =
        0}, 5New Student() With {.StudentID = 15, StudentName = "Ron", Age =
    , StudentName = "Ron", Age =
// }
LINQ 쿼리 문법을 사용하여 청소년 학생을 찾습니다
                                            Dim teenAgerStudents As IList(Of Student) = (From s In studentList _ 12 Where s.Age > 2And s.Age <
                                            0 _

Select s).ToList()

  1. 기억해야 할 주요 사항명명된 것처럼쿼리 문법

  2. 쿼리 문법은 SQL(구조화된 쿼리 언어) 문법과 동일합니다.from구문 시작, 다음과 같이 시작할 수 있습니다.Select또는GroupBy구문 끝.

  3. 필터링, 조인, 그룹화, 정렬 연산자와 같은 다양한 연산자를 사용하여 필요한 결과를 구성할 수 있습니다.

  4. 숨겨진 타입 변수-var는 LINQ 쿼리 결과를 저장할 수 있습니다.