[C#] LINQ 활용 방법




오랫만에 Linq를 사용 해 보았습니다.

조회대상 정보(Key)를 엑셀로 업로드 하면 저장하지 않고 그 대상들만 조회되도록 구현 할 일이 발생했습니다.

따라서 LINQ를 활용하여 조회 기능을 구현 해 보았습니다.


1. 기존 조회기능으로 조회 된 데이터가 dt1에 저장됩니다.

2. 엑셀업로드를 하면 ds형태로 리턴 되는데 값으 dt2에 저장합니다.

3. LINQ를 활용하여 dt1과 dt2를 조인(dt2 포함된 건만 조회되도록)하여 dtTemp 테이블에 저장합니다.

4. dtTemp 테이블을 grid에 바인딩 시켜 줍니다.


using Syste.Linq;


DataTable dtTemp = null;

var dt1 = ds1.Tables[0].AsEnumerable();

var dt2 = ds2.Tables[0].AsEnumerable();


var query = from a in dt1

                 join b in dt2

                 on a.Field<string>("컬럼명").ToString() equals b.Field<string>(컬럼명).ToString()

                 select a;


if (query .Count() > 0)

{

     dtTemp = new DataTable();

     dtTemp = query.CopyToDataTable();

}


grid.DataSource = dvList;

grid.DataBind();


Linq를 활용한 조회 방법에 대하여 알아 보았습니다.

Posted by JOY [바가지]
TAG ,

댓글을 달아 주세요



티스토리 툴바