Entity Framework Core는 플러그 인 라이브러리 호출 데이터베이스 공급자를 통해 다양한 데이터베이스에 액세스할 수 있습니다.
현재 공급자
중요
EF Core 공급자는 다양한 원본을 바탕으로 작성됩니다. 일부 공급자는 Microsoft Entity Framework Core 프로젝트의 일부로 유지되지 않습니다. 공급자를 고려할 때는 품질, 라이선싱, 지원 등을 평가하여 요구 사항을 충족하는지 확인해야 합니다. 또한 자세한 버전 호환성 정보는 각 공급자의 설명서를 검토해야 합니다.
중요
EF Core 공급자는 일반적으로 주 버전에서 작동하지 않습니다. 예를 들어 EF Core 7용으로 릴리스된 공급자는 EF Core 8에서 작동하지 않습니다.
기능이 설치되면 종속성 주입 컨테이너를 사용하는 경우 DbContext, OnConfiguring 메서드 또는 AddDbContext 메서드 중 하나에서 공급자를 구성합니다.
예를 들어 다음 줄에서는 전달된 연결 문자열을 사용하여 SQL Server 공급자를 구성합니다.
데이터베이스 공급자는 EF Core를 확장하여 특정 데이터베이스에 고유한 기능을 사용할 수 있습니다. 개념은 상당 부분 대부분의 데이터베이스에서 공통이며 기본 EF Core 구성 요소에 포함됩니다. 이러한 개념에는 LINQ에서의 쿼리 표현, 트랜잭션, 데이터베이스에서 로드된 후 개체에 대한 변경 내용 추적 등이 포함됩니다.
일부 개념은 특정 공급자에게만 적용됩니다. 예를 들어 SQL Server 공급자에서는 메모리 최적화 테이블을 구성할 수 있습니다(SQL Server 특정 기능). 다른 개념은 공급자 클래스에 특정합니다.
예를 들어 관계형 데이터베이스에 대한 EF Core 공급자는 공통 Microsoft.EntityFrameworkCore.Relational 라이브러리 위에 작성되며 테이블 및 열 매핑, 외부 키 제약 조건 등을 구성하기 위한 API를 제공합니다. 일반적으로 공급자는 NuGet 패키지로 배포됩니다.
중요
EF Core의 새 패치 버전이 릴리스되면 Microsoft.EntityFrameworkCore.Relational 패키지에 대한 업데이트도 포함됩니다.
관계형 데이터베이스 공급자를 추가하면 이 패키지는 애플리케이션의 전이적 종속성으로 전환됩니다.
하지만 대부분의 공급자는 EF Core와 독립적으로 릴리스되고 해당 패키지의 최신 패치 버전에 따라 달라지도록 업데이트되지 않을 수 있습니다.
모든 버그 수정을 가져오기 위해 Microsoft.EntityFrameworkCore.Relational의 패치 버전을 애플리케이션의 직접 종속성으로 추가하는 것이 좋습니다.
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.