CAFE

LINQ

동적인 LINQ (LINQ Dynamic Query Library 사용법)

작성자심재운|작성시간08.01.09|조회수746 목록 댓글 0

원문 : http://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library.aspx

 

 

LINQ (language integrated query)  는 VS 2008 과 .NET 3.5 에서 새롭게 제공해주는 기능중 하나입니다.

 

LINQ 는 .NET 에서 쿼리 데이타의 컨셉으로 만들었습니다. 이는 프로그래밍 언어를 선택하는데 있어서 효과적으로 빨리 쿼리할 수 있게끔 하였습니다.

LINQ 의 장점 중 하나는 VB 그리고 C# 에서 안전한 형식의 쿼리문장을 구현이 가능해졌다는 것입니다. 그 말 의미는 구현한 LINQ 쿼리문장에서 컴파일시에 오류를 체크 할 수 있다는 의미입니다. 그리고 완벽한 인텔리센스 제공 및 구현한 코드에 대한 리팩터링을 제공해 줍니다.

 

이미지를 클릭하면 원본을 보실 수 있습니다.

 


이번에는 동적으로 설계한 LINQ 쿼리를 LINQ 팀에 의해 제공된 Dynamic Query Library  사용방법에 대해서 알아보죠.

 

 

 

 

Downloading the LINQ Dynamic Query Library

 

 

우선 dynamic query LINQ helper library 가 포함되어 있는 C#, VB 샘플 패키지가 VS 2008 Samples download page 에 있습니다. [바로가기]

 

  • VB Dynamic Query Library (included in the \Language Samples\LINQ Samples\DynamicQuery directory)
  • C# Dynamic Query Library (included in the \LinqSamples\DynamicQuery directory)
  •  

     

    VB 와 C# 다이나믹쿼리 샘플 에는 안정된 타입 언어 지시자 대신에 문자 입력을 가진 확장메소드를 이용하여 LINQ 쿼리를 빨리 하게끔 Helper library 를 구현한 소스가 포함되어 있습니다.

    해당 프로젝트에 DynamicQuery 라이브러리의 C# 또는 VB 구현으로 복사/붙이기를 할 수 있습니다.

     

     

    Simple Dynamic Query Library Example

     

    이미지를 클릭하면 원본을 보실 수 있습니다.

     

     

    BindGridTypeSafe() 메소드는 LINQ 형식으로 구현한 메소드이며, 안정된 형식의 타입으로 지시자를 이용하여 조건절, 정렬을 하여 GridView 서버 바인딩 컨트롤에 LINQ 쿼리문을 반영했습니다.

     

    BindGridDynamic() 메소드는 위의 LINQ 의 구문과 비슷하지만, 비교를 하면 동적 쿼리가 MS-SQL 쿼리 문장과 동일하여 해석하는데 매우 쉽습니다. From 절의 생락과 string 문장형식으로 조건 및 정렬을 구현하고 있습니다.

     

     

    Download and Run a Dynamic Query Library Sample

     

    Visual Web Developer 2008 Express 나 VS 2008 로 실행 및 구현이 가능합니다.

     

     

    실행화면 결과는 아래와 같습니다.

     

     

    이미지를 클릭하면 원본을 보실 수 있습니다.


     

     

    동영상으로 미리 보기 : http://sessions.visitmix.com/?selectedSearch=T24

     

    이미지를 클릭하면 원본을 보실 수 있습니다.

     

    감사합니다.

     

    posted by 심재운

    다음검색
    현재 게시글 추가 기능 열기

    댓글

    댓글 리스트
    맨위로

    카페 검색

    카페 검색어 입력폼