개인 재정 LINQ Dummies 치트 시트 - 인형

LINQ Dummies 치트 시트 - 인형

비디오: C# Tutorial 15 LINQ Tutorial 2024

비디오: C# Tutorial 15 LINQ Tutorial 2024
Anonim

By John Paul Mueller

Language INtegrated Query (LINQ)는 다음과 같은 기능입니다. 마이크로 소프트를 넘어서서 당신의 이해를 넓혀주는 NET Framework. LINQ를 사용하여 필수 연산자와 몇 가지 추가 쿼리 연산자를 알면 무엇이든 쿼리 할 수 ​​있습니다. 길을 잃은 경우 Microsoft는 네트워크, 블로그 및 포럼을 통해 풍부한 리소스를 제공합니다.

필수 LINQ 연산자

언어 INTEgrated Query (LINQ)는 놀라운 연산자 배열을 사용합니다. 연산자 는 두 값이 같은지 여부를 확인하는 것과 같이 수행 할 쿼리의 종류를 LINQ에 알려주는 특수한 단어입니다. 운영자는 수백 명에 달할 수 있지만 대부분의 경우 소수의 표준 운영자 만 사용하여 대부분의 작업을 수행합니다. 다음은 필수 LINQ 연산자 목록입니다.

연산자 설명
from 쿼리를 수행하는 데 사용되는 임시 개체를 정의합니다.

이 연산자를 사용하여

쿼리의 다른 모든 데이터를 파생시킨 개별 요소 객체를 정의하는 것으로 생각하십시오. 예를 들어 임시 변수를 기반으로

출력에 표시 할 데이터와 해당 데이터의 순서를 결정합니다

를 선택합니다.

연산자에서 생성 된 모든 쿼리에 반드시 표시되어야하는 유일한 연산자입니다.

in

데이터를 가져 오는 데 사용 된 데이터 소스를 정의합니다. 데이터 소스 는 데이터 공급자가 지원하는 모든 객체가 될 수 있습니다. 공급자

는 데이터 소스와 LINQ 쿼리 간의 연결을 만듭니다.

예를 들어, 데이터 소스에는 목록

상자, XML 파일, SQL Server 테이블, Active Directory, 웹

서비스 또는 사용할 정보가 포함될 수 있습니다

정보를 수집합니다. LINQ 쿼리를 사용하여

하드 드라이브의 파일로 직접 작업하는 것도 가능합니다. 쿼리는 쿼리에서 사용 된

데이터 소스를 완전히 설명하는 데 필요한만큼의 from 연산자와 from 연산자로

일치하는 쌍을 포함 할 수 있습니다.

select

쿼리에 대한 출력 정보를 선택합니다. 가장 간단한 출력은 from 연산자를 사용하여 정의한 것과 동일한 객체입니다. 그러나 select 연산자에는 계산 된 값, 데이터 배열 또는 개별 객체 속성이 포함될 수 있습니다. 대부분의 경우

제한 요소는 LINQ

공급자가 제공하는 기능입니다. 네 가지 기본 공급자에는 전체

선택 연산자 동작 범위가 포함됩니다.

쿼리에는 단 하나의 선택 연산자

만 포함되며이 연산자는

쿼리의 마지막 연산자로 나타나야합니다.

여기서

요소가 출력의 일부로 나타나는 조건을 설명합니다.where 연산자는 항상 출력 조건을 정의하기 위해 Boolean 인수가 필요합니다.

는 출력 기준을 완전히 설명하는 데 필요한만큼 연산자를 포함 할 수 있습니다. LINQ는

연산자가 쿼리에 나타나는 순서대로 연산자를 해석하므로 순서가 중요합니다. 쿼리

가 예상대로 작동하지 않는 경우 출력 연산자

요구 사항을 더 잘 설명하도록 연산자의 순서를 변경하십시오. 디버거를 사용하여 연산자의 논리

흐름에서 오류를 찾을 수 있습니다.

orderby

출력 요소가 나타나는 순서를 정의합니다.

가장 간단한 orderby 연산자는 from

연산자를 사용하여 정의한

객체에 의존합니다. 그러나 orderby 연산자

는 논리 순서 인수 를 입력으로 정의하는 명령문 (일반적으로 숫자, 알파벳순, 기호 또는 이진수)을 허용 할 수 있습니다.

데이터의 출력 순서를 완전히 설명하는 데 필요한

만큼 많은 orderby 연산자를 사용할 수 있습니다.

where 연산자와 마찬가지로 LINQ는 orderby 연산자를 쿼리에 나타나는 순서대로 해석합니다. 결과적으로 orderby 연산자의 순서가 중요합니다.

조인 및

둘 이상의 데이터 소스를 결합하여 데이터의 복합보기를 작성합니다. 데이터 소스는 동일한 제공 업체에 의존 할 필요가 없습니다.

쿼리에 사용 된 모든 데이터 소스를 완전히 설명하는 데 필요한

만큼의 조인 연산자를 사용할 수 있습니다. on 연산자는 두 개의 데이터 소스를 결합하는 데 사용되는

기준을 정의합니다. 조인을 페어화한 연산자

를 사용하여 완전한 데이터 소스를 만듭니다. let

쿼리 내에서 사용할 계산 된 값을 만듭니다. 계산 된

값은 복잡한 쿼리를 공식화하기 쉽습니다. 또한 발신자에게 계산 된 값을 전달하여

추가 출력 정보를 제공 할 수 있습니다. 대부분의 경우 let 연산자는 LINQ가 명명 충돌로 인해 일반적으로 전달하지 않는 데이터를 전달하는 수단을 제공합니다.

는 필요한만큼 많은 연산자를 사용하여 전체 쿼리 기능을 제공 할 수 있지만 계산 된

값이 쿼리 속도를 향상시키는 경우에는

사용을 제한해야합니다.

표준 쿼리 연산자를 사용하면 LINQ (Language INTEgrated Query)를 사용하는 것이 훨씬 쉬워집니다. 여러 가지면에서 이미 간단한 쿼리 연산자로 작업했을 것입니다. 예를 들어 orderby 키워드를 사용하면 표준 쿼리 연산자의 정렬 그룹에서 쿼리 연산자를 사용하게됩니다. where 키워드를 사용하면 다른 쿼리 연산자를 사용하지만 이번에는 필터링 그룹에 포함됩니다.

다음은 표준 쿼리 운영자 그룹의 목록과 추가 정보를 찾을 수있는 위치입니다.

그룹 설명

그룹 설명

포함 연산자

추가 정보

집계 연산

집계 연산자는 모두 데이터 소스로 수학적 작업을 수행하는 것을 도와줍니다.

집계 연산

연결 연산

단일 연결 연산자로 두 개의

시퀀스를 결합 할 수 있습니다.

집계, 평균, 개수, LongCount, Max, Min 및 Sum

LINQ Dummies 치트 시트 - 인형

편집자의 선택

플립 비디오 인형 치트 시트 - 인형

플립 비디오 인형 치트 시트 - 인형

플립 비디오 캠코더는 가장 사용하기 쉬운 캠코더입니다. 세계. 플립 비디오를 사용하면 비디오를 가리키고 촬영 한 다음 컴퓨터로 비디오를 복사 할 수 있습니다. 몇 번의 클릭 후, 당신은 Facebook, MySpace 및 YouTube에서 귀하의 작품을 과시하고 있습니다. Flip의 버튼을 해독함으로써 비디오를 고통없이 촬영하는 방법을 찾으십시오. 알아보기 ...

귀하의 디지털 필름에 대한 개인 상영 - 인형

귀하의 디지털 필름에 대한 개인 상영 - 인형

오늘, DSLR 필름 심사. HD가 장착 된 정교한 대형 스크린 TV는 여러 스피커의 서라운드 사운드 스테레오와 함께 아주 좋은 간식을 제공합니다. 따라서 영화 밤을 장소에서 쉽게 주최 할 수 있으며 영화관에 갈 수도 있습니다. ...

디지털 영화에 정적 제목을 추가하는 방법 - 인형

디지털 영화에 정적 제목을 추가하는 방법 - 인형

초연 요소는 다양한 선택을 제공합니다 DSLR 영화의 타이틀 선택 항목, 하위 3 분의 1 로케이터 정보. 로케이터 정보는 뉴스 세그먼트 및 다큐멘터리에서 장면의 사람이나 장소를 설명하는 데 사용되는 ID와 같습니다. 사람의 경우 이름과 설명이라는 두 줄로 구성됩니다. 예를 들어, Charles Dickens / Writer, ...

편집자의 선택

관계 속의 분노를 다루는 - 인형

관계 속의 분노를 다루는 - 인형

우리 모두는 때때로 파트너들과 화를 낸다. 분노가 당신과 당신의 관계에 미치는 파괴적인 영향을 최소화하는 데 도움이되는 다음 요령을 시도하십시오. 당신이 분노의 징후를 처음 알기 시작할 때, 당신의 파트너에게 무슨 일이 일어나는지 물어보십시오. 화가 난 사람을 상처 입히려 고합니다.

자폐증 진단의 영향 - 인형

자폐증 진단의 영향 - 인형

자폐아를 찾는 것이 매우 어렵습니다. 앞으로의 길은 쉬울 것이라고 아무도 말할 수 없습니다. 자녀의 생년월일과 본인의 생년월일에 관한 스크립트를 다시 작성해야 할 수도 있습니다. 당신은 지금 다루어야 할 새로운 쟁점, 압박 및 결정들을 가지고 있습니다. 그리고 주변 사람들은 ...

당신이 종속인지 결정하기 - 인형

당신이 종속인지 결정하기 - 인형

다음 증상 목록에서 확인하십시오. 당신은 모두가 공손 할 필요는 없으며, 코펜던트의 심각성 정도가 있습니다. 치료를하지 않으면 시간이 지남에 따라 코드 종속성이 악화되지만 도움을 받아 복구 할 수 있고 작업에서 훨씬 더 효과적 일 수 있습니다 ...

편집자의 선택

짧은 명상 묵상 시도 - 인형

짧은 명상 묵상 시도 - 인형

당신의 마음을 집중할 수있는 능력은 마음 챙김 명상을 통해 가장 강력하게 개발됩니다. Mindfulness 명상 중 하나는 호흡의 mindfulness입니다. 이것은 숨을 의식적으로 인식하는 것입니다. 명상을 스스로 시도하려면 다음 단계를 따르십시오. 자신의 호흡 감을 알아야합니다. 변경할 필요가 없습니다 ...

마음가짐의 세 측면 - 인형

마음가짐의 세 측면 - 인형

마음가짐은 세 가지 측면으로 주의 깊은 인식. 이 목록을 인쇄하여 핀이 무엇인지 생각 나게하십시오. 의도 - 당신의 의도는 당신이 마음가짐을 연습함으로써 얻고 자하는 것입니다. 스트레스를 줄이고 감정적 인 균형을 유지하거나 발견 할 수 있습니다.

다른 명상을 시도하십시오 - 인형

다른 명상을 시도하십시오 - 인형

명상 확장이라는 인식은 명상 확장의 중심에 있습니다. Mindfulness 명상 연습. 앉는 자리는 수천 년 동안 명상을 위해 그리고 정당한 이유로 사용되었습니다. 어떻게 평소에 앉아 있니? 당신이 대부분의 사람들과 비슷하다면, 아마 의자 나 소파 뒤에 기대어집니다. 네가 괜찮다면 ...

Concat Microsoft 개발자 네트워크: 연결 작업 데이터 형식 변환
데이터 형식 변환은 지연 및 nondeferred의 두 가지 형식으로 제공됩니다. 지연 변환 연산자는 결과의

집합을 해석 할 때 쿼리의 결과

를 특정 유형으로 변환합니다. 불이행 변환 연산자는 쿼리의 출력을 특정 유형으로 변경합니다.

AsEnumerable, AsQueryable, Cast,

OfType, ToArray, ToDictionary, ToList, 및 ToLookup

Microsoft

개발자 네트워크: 데이터 형식 변환 요소 연산

요소와 같은 식별 정보

를 모르는 경우에도 시퀀스의 특정 요소를 선택합니다.

ElementAt, ElementAtOrDefault, First, FirstOrDefault, Last,

LastOrDefault, Single 및 SingleOrDefault Microsoft

개발자 네트워크: 요소 작업

동일 작업

단독 평등 연산자를 사용하면 두 개의

시퀀스는 동일하다 (요소의 수와 각

요소의 내용은 동일하다).

SequenceEqual

Microsoft

개발자 네트워크: Equality Operations 데이터 필터링

필터링 연산자를 사용하면 특정 기준에 따라 시퀀스의 요소를 제외하거나 포함 할 수 있습니다.

OfType 및 Where

Microsoft

개발자 네트워크: 데이터 필터링

생성 작업

생성 연산자는 지정한

기준에 따라 새 시퀀스를 만듭니다. DefaultIfEmpty, Empty, Range 및

반복

Microsoft

개발자 네트워크: 생성 작업 데이터 그룹화

그룹화 연산자를 사용하면 특정

특성 문자열 그룹의 첫 번째 문자로 사용됩니다.

GroupBy 및 ToLookup

Microsoft 개발자 네트워크: 데이터 그룹화

조인 작업

조인 연산자는 두 개 이상의 시퀀스를 입력으로 받아들이고 는 특정 조인을 기반으로 한 단일 출력 시퀀스를 만듭니다 조인 기준을 입력하고

.

Join and GroupJoin

Microsoft

개발자 네트워크: Join 조작

데이터 파티셔닝

파티셔닝 연산자는 시퀀스를 구분하여 특정 정보를 찾는 데 도움을줍니다.

Microsoft는

개발자 네트워크: 데이터 파티셔닝

프로젝션 작업 프로젝션 연산자는 사용자가 만든 쿼리

를 기반으로 새로운 형식을 만듭니다.

Select and SelectMany Microsoft

개발자 네트워크: 투영 연산

수량 한정자 연산

수량 한정 연산자를 사용하면 특정 기준에 따라 요소를 선택할 수 있습니다. 이 연산자를 사용하여

없음, 하나 또는 둘 이상의 요소가 선택한

기준을 충족하는지 확인합니다. 모두, 모두,

포함

Microsoft

개발자 네트워크: 수량 자 작업

집합 연산

집합 연산자는 집합을 만듭니다. 학교에서 수행 한 산수 계산법을 생각해보십시오.

Distinct, Except, Intersect, Union Microsoft

개발자 네트워크: Set Operations

데이터 정렬 정렬 연산자는 시퀀스를 특정

순서로 배치하는 데 도움이됩니다.

OrderBy, OrderByDescending, ThenBy, ThenByDescending 및 Reverse Microsoft

개발자 네트워크: 데이터 정렬

Microsoft LINQ 리소스

추가 정보와 도구 및 개선 사항을 얻을 수있는 곳을 아는 것이 유용합니다 언어 통합 쿼리 (LINQ) 응용 프로그램을 만들 때. 다음은 LINQ에 유용한 Microsoft 리소스 목록입니다.

Microsoft 개발자 네트워크

Microsoft 개발자 네트워크 (MSDN)는 항상 모든 Microsoft 개발 제품의 기본 자료를 제공합니다. 어느 한 사람이 평생 읽는 것보다 더 많은 정보를 얻을 수 있습니다. 따라서 신중하게 정보를 이동해야하거나 MSDN 미로에서 길을 잃을 수 있습니다. LINQ를 사용하기위한 주요 MSDN 사이트는 뉴스, 리소스 및 샘플과 같은 다른 정보에 대한 액세스를 제공합니다.

Microsoft 블로그

Microsoft는 LINQ 사용 방법을 알고 자합니다. 과거에는 MSDN에서 필요한 많은 정보를 찾을 수있었습니다. MSDN 웹 사이트는 여전히 좋은 곳이지만 많은 Microsoft 개발자는 너무 정식이라고 (일부 경우에는 기사를 이해하기가 매우 어렵다는) 불평하고 저자와 상호 작용할 수있는 기회가 없었습니다. Microsoft 블로그는 저자와 실제로 의견을 나눌 수있는 정보를 얻을 수있는 친숙한 환경을 제공합니다.

Beth Massi: Visual Basic (VB)의 장점 공유하기 Charlie Calvert의 커뮤니티 블로그

Wriju의 블로그:

LINQ와 함께 작업 할 때 방문하고 싶은 몇 가지 블로그가 있습니다. NET 및 Everything

이 블로그의 대부분은 일반적입니다. 모든 프로그래밍 문제를 논의합니다. 따라서 각 블로그에서 다양한 주제를 찾을 수 있습니다. 저자는 하나의 게시물에서 파일 시스템을 논의하고 다른 게시물에서는 LINQ에 대해 토론 할 수 있습니다. 각각 블로그의 검색 기능을 사용하여 검색 할 수있는 LINQ 관련 항목이 있습니다. Charlie Calvert가 Microsoft를 떠났지만 그의 블로그에는 풍부한 LINQ 정보가 포함되어 있습니다.

Microsoft 포럼

블로그를 통해 Microsoft와 충분한 상호 작용을하고 있다고 생각하지 않으면 Microsoft 직원은 종종 Microsoft 포럼을 자주 방문합니다. 올바른 포럼에 메시지를 올리면 전문적인 도움이나 다른 포럼 회원의 지식이있는 도움을받을 수 있습니다. 대부분의 개발자는 MSDN 포럼을 통해 LINQ에 대한 기본적인 질문을받습니다. Microsoft 커뮤니티에서 일반적인 포럼 목록을 볼 수 있습니다. Visual Basic에 대한 언어 별 포럼을 사용하는 것을 잊지 마십시오. 그물.