2011-03-19 4 views
3

100 개 이상의 테이블이있는 데이터베이스에 대해 자동 생성 된 Entity-Framework 데이터 모델을 사용합니다. 비록 내가 테이블을 5 개만 사용하더라도 모든 테이블을 C# 클래스에 매핑하도록 선택합니다.EF : 첫 번째 DataContext 초기화 시간을 줄이는 방법

FormLoad 이벤트에서 DataContext 인스턴스를 만드는 dekstop 응용 프로그램을 시작할 때마다 내부 EF 초기화에 3-4 초가 걸립니다. 이 시작 시간은 자동 생성 클래스의 수에 따라 크게 달라집니다. 5 개의 테이블에 대해서만 매핑을 생성하기로 결정했을 때 시작 시간이 크게 줄어 들었습니다.

뒤에서 어떤 일이 일어나고 있는지 궁금하고 프로그램에서 사용되지 않는 모든 테이블 매핑을 유지하면서 표준 동작을 변경할 수 있습니까? 어떤 테이블을 매핑해야하는지 신경 쓰고 싶지 않습니다. 나는 EF가 약간의 반사 작업을한다고 생각합니다. 게으른로드 스타일이나 어떤 종류의 일을 할 수 있습니까?

미리 감사드립니다.

답변

3

나는이 두 기사 인 Part 1Part 2을 읽는 것이 좋습니다. 애플리케이션을 시작할 때 발생하는 상황과 엔터티 프레임 워크에 대한 뷰를 사전 생성하여 시작 시간을 줄이는 방법에 대해 설명합니다. 어쨌든 당신이 필요하지 않은 테이블을 포함하는 것이 나쁜 접근법이며, 엔티티 모델로부터 단순히 그것들을 제거하는 것보다 당신의 시작 시간을 줄이는 것은 없다.

관련 문제