Microsoft MVP성태의 닷넷 이야기
.NET Framework: 82. Orcas 1월 CTP에서 Linq 소스 컴파일 방법 [링크 복사], [링크+제목 복사],
조회: 21174
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 


Orcas 1월 CTP에서 Linq 소스 컴파일 방법


개발 환경 설정은 이전에 아래의 토픽에서 이미 설명을 드렸습니다.

LINQ 개발 환경 설정 
; https://www.sysnet.pe.kr/2/0/458

간단하게 정리하면, "1. VS.NET 2005 + Linq Preview" 버전으로 공부하는 방법"2. Orcas Jan CTP" 버전으로 공부하는 방법으로 나뉩니다.

Orcas 1월 CTP 버전으로 공부한다고 해도, "Linq Preview" 버전은 꼭 구해서 테스트 컴퓨터에 설치해 보실 것을 권해 드립니다. 왜냐하면, "Linq Preview" 설치 버전과 함께 다양한 예제 파일 및 문서들이 같이 설치되기 때문입니다. 사실, "Linq Preview" 설치 후에 제공되는 "C:\Program Files\LINQ Preview\Docs\Hands on Labs" 폴더에 담겨진 문서만 차근차근히 따라해 봐도 Linq에 대한 준비는 충분히 되실 거라 봅니다.

"1. VS.NET 2005 + Linq Preview" 버전으로 공부하시는 경우에는 Linq를 위한 프로젝트 템플릿까지 제공되어 편하게 실습을 해볼 수 있습니다. 예를 들어, "C:\Program Files\LINQ Preview\Docs\Hands on Labs"에 담겨진 예제 실습을 위해서 다음과 같이 VS.NET 2005에서 "Linq Console Application"을 선택하게 되면 관련 어셈블리 참조 및 using 문을 포함한 네임스페이스까지 선언된 소스코드가 제공되어 테스트하기가 매우 편리합니다.

[그림 1: Linq 관련 프로젝트 템플릿]
linq_compile_1.png

네임스페이스는 다음과 같이 기본 제공됩니다.

using System;
using System.Collections.Generic;
using System.Text;
using System.Query;
using System.Xml.XLinq;
using System.Data.DLinq;

문제는 "Orcas 1월 CTP" 버전의 경우, "[그림 1: Linq관련 프로젝트 템플릿]"에서 보는 것과 같은 템플릿들이 제공되지 않는다는 것입니다. (아마도 다음 Orcas CTP 버전에서는 제공될 것으로 예상됩니다.) 따라서 "Orcas 1월 CTP"로 공부하시는 분들은 프로젝트 참조 및 using 선언을 별도로 제공해 줘야합니다. 거기다 상황을 더욱 어렵게 만드는 것은, 웹상에 널려진 거의 대부분의 문서들(Linq Preview에 담겨진 것 포함)이 "Linq Preview - 2006년 5월 CTP" 기준으로 작성되어 있기 때문에 그사이 변화된 "Orcas 1월 CTP"에는 적용되지 않는 다는 것입니다.

실제로, 기존 예제들을 빌드하게 되면 다음과 같은 식의 빌드 오류 메시지를 Orcas에서 보게 됩니다.

Error	1	'System.Collections.Generic.List<TestApp.Contact>' does not contain a definition for 'Where'
C:\temp\Program.cs

이것은 Linq 관련 확장 함수들을 담고 있는 어셈블리가 적절하게 참조되어 있지 않기 때문에 나타나는 오류메시지입니다. 이러한 오류 메시지를 피하기 위해서는, - 또한 앞으로 공부하게 될 Linq 관련 예제들을 위해서 - 아예 다음과 같은 어셈블리는 프로젝트마다 기본적으로 참조를 걸어두는 것이 좋겠습니다.

C:\Windows\Microsoft.NET\Framework\v3.5.11209\.NET 3.5
	System.Core.dll
	System.Data.Entity.dll
	System.Data.Linq.dll
	System.Xml.Linq.dll

물론, 소스 파일에는 다음과 같은 using 문을 추가로 포함시켜 둡니다.

using System.Data.DLinq;
using System.Xml.XLinq;
using System.Xml.Linq;
using System.Linq;
using System.Linq.Expressions;

그럼... ^^ 재미있는 공부하시길 바랍니다.



[이 토픽에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 7/5/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... [121]  122  123  124  125  126  127  128  129  130  131  132  133  134  135  ...
NoWriterDateCnt.TitleFile(s)
10898정성태2/17/201621778.NET Framework: 547. PerformanceCounter의 InstanceName 지정 시 주의 사항파일 다운로드1
10897정성태2/17/201621075디버깅 기술: 76. windbg 분석 사례 - 닷넷 프로파일러의 GC 콜백 부하
10896정성태2/17/201622244오류 유형: 320. FATAL: 28000: no pg_hba.conf entry for host "fe80::1970:8120:695:a41e%12"
10895정성태2/17/201621070.NET Framework: 546. System.AppDomain으로부터 .NET Profiler의 AppDomainID 구하는 방법 [1]
10894정성태2/17/201621809오류 유형: 319. Visual Studio에서 찾기는 성공하지만 해당 소스 코드 정보가 보이지 않는 경우
10893정성태2/16/201620418.NET Framework: 545. 닷넷 - 특정 클래스가 로드되었는지 여부를 알 수 있을까? - 두 번째 이야기
10892정성태2/16/201621070오류 유형: 318. 탐색기에서 폴더 생성/삭제 시 몇 초 동안 멈추는 현상
10891정성태2/16/201624075VC++: 95. 내 CPU가 MPX/SGX를 지원할까요? [1]
10890정성태2/15/201623918.NET Framework: 544. C# 5의 Caller Info를 .NET 4.5 미만의 응용 프로그램에 적용하는 방법 [5]
10889정성태2/14/201620253.NET Framework: 543. C++의 inline asm 사용을 .NET으로 포팅하는 방법 - 두 번째 이야기파일 다운로드1
10888정성태2/14/201618610.NET Framework: 542. 닷넷 - 특정 클래스가 로드되었는지 여부를 알 수 있을까?
10887정성태2/3/201619260VC++: 94. MPX(Memory Protection Extensions) 테스트파일 다운로드1
10886정성태2/3/201620503개발 환경 구성: 281. Intel MPX Runtime Driver 수동 설치
10885정성태2/2/201620186오류 유형: 317. Sybase.Data.AseClient.AseException: The command has timed out.
10884정성태1/11/201621426개발 환경 구성: 280. 닷넷에서 SAP Adaptive Server Enterprise 데이터베이스 사용파일 다운로드1
10882정성태1/6/201620705Windows: 113. 윈도우의 2179, 26143, 47001 TCP 포트 사용 [1]
10881정성태1/3/201622161오류 유형: 316. 윈도우 10 - 바탕/돋음 체가 사라져 한글이 깨지는 현상 [2]
10880정성태12/16/201519797오류 유형: 315. 닷넷 프로파일러의 오류 코드 정보
10879정성태12/16/201521704오류 유형: 314. Error : DEP0700 : Registration of the app failed. error 0x80070005
10878정성태12/9/201524819디버깅 기술: 75. UWP(유니버설 윈도우 플랫폼) 앱에서 global::System.Diagnostics.Debugger.Break 예외 발생 시 대응 방법
10877정성태12/9/201529267VC++: 93. std::thread 사용 시 R6010 오류 [2]
10876정성태11/26/201525297.NET Framework: 541. SignedXml을 이용한 ds:Signature만드는 방법 [3]파일 다운로드1
10875정성태11/26/201530307개발 환경 구성: 279. signtool.exe의 다중 서명 기능 [2]
10874정성태11/26/201526304개발 환경 구성: 278. 인증서와 인증서를 이용한 코드 사인의 해시 구분
10873정성태11/25/201525426.NET Framework: 540. C# - 부동 소수 계산 왜 이렇게 나오죠? (2) [3]파일 다운로드1
10872정성태11/24/201532385.NET Framework: 539. C# - 부동 소수 계산 왜 이렇게 나오죠? (1) [1]
... [121]  122  123  124  125  126  127  128  129  130  131  132  133  134  135  ...