2014-09-16 2 views
0

현재 LOB VB.NET 응용 프로그램을 적절한 n 계층 아키텍처를 사용하여 구조화하기 위해 개발 중입니다 (전적으로 개발자입니다). 또한 형식이 지정되지 않은 데이터 집합보다는 사용자 지정 클래스에서 강력한 형식의 목록으로 이동합니다. 필자는 Entity Framework 대신 사용자 지정 DTO를 사용하거나 읽은 내용을 기반으로 형식화 된 데이터 집합을 사용하여이 문제에 접근하려고했습니다. 나는 이것에 익숙하지 않고 나의 질문은 간단한 것이지만 다른 직책에 어떤 직접적인 대답도 찾을 수 없었다.DAL 디자인 - 강력한 형식의 "요약"목록에 대한 접근 방식

다양한 데이터가 들어있는 20 개의 필드/속성이있는 Customer 클래스가 있습니다. 단일 레코드를 편집 할 때 필요합니다. 요약 그리드의 모든 고객 목록을 반환해야하며이 필드 중 5 개만 포함해야합니다. List (Of Customer)를 사용하지 않고 매우 비효율적 인 UI로 15 개의 필수 필드를 바인딩하지 않는다고 가정합니다. List (Of CustomerSummary)를 사용할 수 있도록 별도의 DTO를 작성해야합니까? UI에서 다른 필드 집합을 보여주는 5 개의 다른 격자가 있다고 가정 해 봅시다. 각 필드 집합에 대해 클래스를 만들어야합니까?

+0

예, 올바른 길을 가고 있습니다. –

답변

0

별도의 DataTable을 만들면 유지 관리가 어려워집니다. 특히 필드를 수정해야하는 경우. 고객 테이블에서 하나의 DataTable을 생성하면됩니다. 그런 다음 표시 할 각 표에 대해 DataView를 만듭니다. DataView를 사용하면 DataGrid (예 : 정렬, 필터 등)를 통해 데이터를 조작 할 수 있습니다.

가져 오기 성능에 대해 정말로 우려하는 경우 표시해야하는 각 표에 대해 TableAdapter에 Command를 작성하십시오. 필수 필드 만 가져 오도록 SQL 명령을 사용자 정의하십시오.

+0

의견에 감사드립니다. 솔직히 말해서 이전에 어떻게했는지는 알지만, 멀티 레벨 그리드의 계층 구조와 같은 추가 데이터 집합 기능이 필요하지 않으면 데이터 집합과 뷰를 사용하는 대신 강력한 형식의 모델로 이동하려고합니다. –

관련 문제