42. [ADO.NET] DataView 클래스 개요 및 속성

ADO.NET 기술에서는 DataTable의 사용자 지정 뷰인 DataView 클래스를 제공합니다. DataTable에 있는 내용을 정렬하거나 탐색 및 필터링을 하기 위해 DataView 개체를 이용합니다. DataView 개체는 데이터를 저장하지 않으면 DataView 개체와 의존 관계에 있는 DataTable 개체의 뷰를 나타냅니다.

DataView에서는 원본 DataTable의 데이터에 관한 서로 다른 뷰를 동적으로 제공합니다. 따라서 뷰와 관련없는 다른 테이블에 영향을 받지 않고 DataView에 없는 데이터를 사용자로부터 보호할 수 있습니다. 실제 윈도우즈 응용 프로그램이 웹 프로그래밍에서 데이터 바인딩 컨트롤을 사용할 때 DataView 개체를 많이  이용합니다.

▷클래스 상속 계층

System.Object
System.ComponentModel.MarshalByValueComponent
System.Data.DataView

DataView 생성자

public DataView ( );
public DataView (DataTable table);
public DataView (DataTable table, string row_filter, 
                 string sort, DataViewRowState state);

다음은 Books 테이블에 있는 데이터 중에서 저자가 홍길동인 책들을 ISBN 순으로 정렬한 DataView 개체를 생성하는 코드입니다.

DataView view = new DataView(dt_books,”Author=홍길동”, “ISBN”, DataViewRowState.CurrentRows);

DataView 속성

다음은 DataView 클래스의 주요 속성입니다.

속성가져오기/설정하기설명
AllowDelete가져오기/설정하기삭제 허용 여부
AllowEdit가져오기/설정하기편집 허용 여부
AllowNew가져오기/설정하기새 행을 추가할 수 있는지 여부
ApplyDefaultSort가져오기/설정하기기본 키로 정렬할 지 여부
Item가져오기의존 관계에 있는 테이블의 데이터(행)
Sort가져오기/설정하기정렬에 사용할 열
Table가져오기/설정하기의존 관계에 있는 테이블