Microsoft MVP성태의 닷넷 이야기
.NET Framework: 82. Orcas 1월 CTP에서 Linq 소스 컴파일 방법 [링크 복사], [링크+제목 복사],
조회: 21272
글쓴 사람
정성태 (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

비밀번호

댓글 작성자
 




... 91  92  93  94  95  96  97  98  99  100  101  [102]  103  104  105  ...
NoWriterDateCnt.TitleFile(s)
11382정성태12/4/201721895오류 유형: 436. System.Data.SqlClient.SqlException (0x80131904): Connection Timeout Expired 예외 발생 시 "[Pre-Login] initialization=48; handshake=1944;" 값의 의미
11381정성태11/30/201718283.NET Framework: 702. 한글이 포함된 바이트 배열을 나눈 경우 한글이 깨지지 않도록 다시 조합하는 방법(두 번째 이야기)파일 다운로드1
11380정성태11/30/201718361디버깅 기술: 109. windbg - (x64에서의 인자 값 추적을 이용한) Thread.Abort 시 대상이 되는 스레드를 식별하는 방법
11379정성태11/30/201719095오류 유형: 435. System.Web.HttpException - Session state has created a session id, but cannot save it because the response was already flushed by the application.
11378정성태11/29/201720539.NET Framework: 701. 한글이 포함된 바이트 배열을 나눈 경우 한글이 깨지지 않도록 다시 조합하는 방법 [1]파일 다운로드1
11377정성태11/29/201719835.NET Framework: 700. CommonOpenFileDialog 사용 시 사용자가 선택한 파일 목록을 구하는 방법 [3]파일 다운로드1
11376정성태11/28/201724201VS.NET IDE: 123. Visual Studio 편집기의 \r\n (crlf) 개행을 \n으로 폴더 단위로 설정하는 방법
11375정성태11/28/201718964오류 유형: 434. Visual Studio로 ASP.NET 디버깅 중 System.Web.HttpException - Could not load type 오류
11374정성태11/27/201724069사물인터넷: 14. 라즈베리 파이 - (윈도우의 NT 서비스처럼) 부팅 시 시작하는 프로그램 설정 [1]
11373정성태11/27/201723054오류 유형: 433. Raspberry Pi/Windows 다중 플랫폼 지원 컴파일 관련 오류 기록
11372정성태11/25/201726107사물인터넷: 13. 윈도우즈 사용자를 위한 라즈베리 파이 제로 W 모델을 설정하는 방법 [4]
11371정성태11/25/201719715오류 유형: 432. Hyper-V 가상 스위치 생성 시 Failed to connect Ethernet switch port 0x80070002 오류 발생
11370정성태11/25/201719653오류 유형: 431. Hyper-V의 Virtual Switch 생성 시 "External network" 목록에 특정 네트워크 어댑터 항목이 없는 경우
11369정성태11/25/201721726사물인터넷: 12. Raspberry Pi Zero(OTG)를 다른 컴퓨터에 연결해 가상 키보드 및 마우스로 쓰는 방법 (절대 좌표, 상대 좌표, 휠) [1]
11368정성태11/25/201727318.NET Framework: 699. UDP 브로드캐스트 주소 255.255.255.255와 192.168.0.255의 차이점과 이를 고려한 C# UDP 서버/클라이언트 예제 [2]파일 다운로드1
11367정성태11/25/201727422개발 환경 구성: 337. 윈도우 운영체제의 route 명령어 사용법
11366정성태11/25/201719106오류 유형: 430. 이벤트 로그 - Cryptographic Services failed while processing the OnIdentity() call in the System Writer Object.
11365정성태11/25/201721333오류 유형: 429. 이벤트 로그 - User Policy could not be updated successfully
11364정성태11/24/201723265사물인터넷: 11. Raspberry Pi Zero(OTG)를 다른 컴퓨터에 연결해 가상 마우스로 쓰는 방법 (절대 좌표) [2]
11363정성태11/23/201723163사물인터넷: 10. Raspberry Pi Zero(OTG)를 다른 컴퓨터에 연결해 가상 마우스 + 키보드로 쓰는 방법 (두 번째 이야기)
11362정성태11/22/201719703오류 유형: 428. 윈도우 업데이트 KB4048953 - 0x800705b4 [2]
11361정성태11/22/201722455오류 유형: 427. 이벤트 로그 - Filter Manager failed to attach to volume '\Device\HarddiskVolume??' 0xC03A001C
11360정성태11/22/201722291오류 유형: 426. 이벤트 로그 - The kernel power manager has initiated a shutdown transition.
11359정성태11/16/201721766오류 유형: 425. 윈도우 10 Version 1709 (OS Build 16299.64) 업그레이드 시 발생한 문제 2가지
11358정성태11/15/201726558사물인터넷: 9. Visual Studio 2017에서 Raspberry Pi C++ 응용 프로그램 제작 [1]
11357정성태11/15/201727057개발 환경 구성: 336. 윈도우 10 Bash 쉘에서 C++ 컴파일하는 방법
... 91  92  93  94  95  96  97  98  99  100  101  [102]  103  104  105  ...