Code First는 대규모 응용 프로그램에는 적합하지 않습니다. 대규모 앱 개발 소요 시간은 매우 큽니다.
일반적으로 비즈니스 앱의 수명주기는 다음과 같습니다.
- 버전 1이 생산 중입니다
- 버전 2는 베타 버전입니다
- 버전 3은 현재 개발 중입니다
- 버전 4가 계획 중입니다.
그리고 다른 교차 응용 프로그램 통신 브리지, 일부 예약 된 작업, 일부 타사 통합, 모바일 등의 다른 통신 장치를위한 웹 서비스가 있습니다.
결국 Code First는 Entity Model의 ObjectContext를 사용하며, 이전 EF는 EDMX를 생성하고 EntityObject와 함께 ObjectContext를 사용하는 것이 모든 것이 충분했습니다. 텍스트 템플릿을 쉽게 사용자 정의하여 코드를 생성 할 수 있습니다. ObjectContext 구현에서는 변경 감지 방법이 느리지 만 프록시를 생성하는 대신 EF 팀은 먼저 코드를 다시 작성하는 대신 변경 감지 속도를 쉽게 개선 할 수있었습니다.
자동화 된 마이그레이션
자동화 된 마이그레이션은 이론적으로는 좋지만 실제로 사용하면 실제로는 불가능합니다. 프로토 타이핑에만 유용하며 빠른 데모를 개발합니다.
코드 우선 마이그레이션은 이러한 시스템에 전혀 적합하지 않습니다. 버전 1과 버전 2는 대부분 동일한 데이터베이스와 통신합니다. 버전 3과 버전 4는 일반적으로 준비 중이며 데이터베이스가 다릅니다.
데이터베이스 우선
Database First는 실용적인 접근 방식으로 SQL 스크립트를 쉽게 비교하고 시각화하고 유지 관리 할 수 있습니다. DBA는 쉽게 작업 할 수 있습니다.
텍스트 템플릿
성능 문제를 해결하는 사용자 지정 구현이 거의없이 EDMX 및 ObjectContext를 쿼리하고 생성하기 위해 자체 텍스트 템플릿을 만들었습니다. 여러 버전의 응용 프로그램이 문제없이 동일한 데이터베이스와 통신합니다.
나에게 .tt 파일을 마우스 오른쪽 버튼으로 클릭하고 "사용자 정의 도구 실행"을 클릭하면 클래스 작성, 모델 구성 및 작성이 훨씬 빠르고 쉬운 단계입니다.