[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를 활용한 조회 방법에 대하여 알아 보았습니다.
'프로그래밍 > JAVA, .NET, 기타' 카테고리의 다른 글
[c#오류] DropDownList 여러 항목을 선택할 수 없습니다 (6) | 2018.05.04 |
---|---|
자바스크립트 prompt 함수 예제 (6) | 2018.01.23 |
[닷넷] 웹 타임아웃 문제 해결하기 (0) | 2017.10.10 |
[닷넷] C# RenderControl 함수로 엑셀 내려받기 기능 구현 (0) | 2017.09.19 |
[BAT] 명령어 간단한 예제로 맛보기 (0) | 2017.09.04 |