EntityDataSource 컨트롤 구성
업데이트: 2007년 11월
EntityDataSource 컨트롤은 ADO.NET Entity Framework의 개체 서비스 구성 요소를 사용하여 EDM(엔터티 데이터 모델)이 정의하는 데이터와 ASP.NET 웹 응용 프로그램 컨트롤 간의 바인딩을 단순화합니다. 이를 통해 컨트롤은 개체 쿼리를 작성 및 실행하고 반환된 개체, 즉 EDM에 정의된 엔터티 형식의 인스턴스에 컨트롤을 바인딩할 수 있습니다. 자세한 내용은 개체 서비스 개요(Entity Framework)를 참조하십시오.
EDM에 연결하여 올바른 엔터티 형식을 반환하려면 EntityDataSource 컨트롤의 속성을 구성해야 합니다. ConnectionString 및 DefaultContainerName 속성을 설정하면 EntityDataSource 컨트롤이 개체 쿼리를 실행하는 데 사용할 ObjectContext를 만들 수 있습니다. EntitySetName 및 EntityTypeFilter 속성을 설정하면 EntityDataSource 컨트롤이 작성하는 ObjectQuery<T>의 형식을 정의할 수 있습니다.
참고: |
---|
EntityDataSource 컨트롤을 사용하려면 EDM 모델, 매핑 파일, ObjectContext를 나타내는 클래스 및 엔터티 형식이 포함된 DLL에 대한 참조를 응용 프로그램에 추가해야 합니다. |
연결 문자열
응용 프로그램 구성 파일의 connectionStrings 요소에 저장된 명명된 EDM 연결 문자열에서 EntityDataSource 컨트롤의 ConnectionString 속성을 초기화할 수 있습니다. 엔터티 데이터 모델 마법사를 사용하여 EDM을 만들 때 응용 프로그램 구성 파일에 명명된 EDM 연결을 만듭니다. 그러면 EntityDataSource 디자이너의 데이터 소스 구성 마법사에서 이 연결이 옵션으로 표시됩니다. 자세한 내용은 데이터 소스 마법사 구성(EntityDataSource 컨트롤)을 참조하십시오.
개체 컨텍스트
개체 서비스에서 형식화된 ObjectContext는 개념 모델의 엔터티 컨테이너를 나타냅니다. ObjectContext 클래스는 EDM이 정의하는 데이터와의 상호 작용을 위한 기본 클래스입니다. 이 데이터는 엔티터 형식의 인스턴스인 개체 형식을 취합니다. 형식화된 ObjectContext는 데이터베이스에 대한 연결, 모델을 설명하는 메타데이터, 그리고 만들기, 업데이트 및 삭제 작업 중 개체를 추적하는 ObjectStateManager 개체를 캡슐화합니다. EntityDataSource 컨트롤의 ContextTypeName 속성은 EntityDataSource 컨트롤이 사용하는 형식화된 ObjectContext의 정규화된 형식 이름을 지정하는 문자열입니다. ContextTypeName 속성을 지정하지 않을 경우 EntityDataSource 컨트롤에 대한 DefaultContainerName 및 ConnectionString 속성을 모두 설정하여 ObjectContext를 만들어야 합니다. ContextType 속성에서 EntityDataSource 컨트롤이 사용하는 ObjectContext에 액세스할 수 있습니다. 자세한 내용은 개체 컨텍스트 수명 주기 관리(EntityDataSource)를 참조하십시오.
엔터티 형식
EDM에서 엔터티 집합은 개념 스키마에 정의된 엔터티 형식에 대한 논리적 컨테이너입니다. EntityDataSource 컨트롤이 EntitySetName을 통해 액세스하는 개체 형식의 엔터티 집합을 지정할 수 있습니다. EntitySetName 속성의 값은 컨트롤이 사용하는 기본 SELECT 문입니다. CommandText 속성에 제공된 Entity SQL 식으로 쿼리를 지정할 경우에는 설정이 필요하지 않습니다. 자세한 내용은 사용자 지정 명령 텍스트(EntityDataSource)를 참조하십시오.
EntityDataSource 컨트롤이 특정 파생 형식을 반환할 경우 이 파생 형식의 이름도 EntityTypeFilter 속성에 지정해야 합니다. EntitySetName 속성에 다형적 결과를 생성할 수 있는 엔터티 집합을 지정할 경우 데이터를 편집하려면 EntityTypeFilter 속성이 필요합니다. EntityTypeFilter 속성을 설정하면 ObjectQuery<T>에 OfType<TResultType> 메서드를 적용하는 것과 동일한 효과를 얻을 수 있습니다. 데이터 바인딩이 읽기 전용이면 EntityTypeFilter 속성은 필요하지 않습니다. 이 경우 쿼리에서 반환하는 개체의 속성은 엔터티 집합에 대한 기본 엔터티 형식의 속성이 됩니다.
참고 항목
개념
데이터 소스 마법사 구성(EntityDataSource 컨트롤)
사용자 지정 명령 텍스트(EntityDataSource)