EF Core 확장에는 코어 EF 및 공급자 구성 요소에 논리를 추가해야 하는 경우가 많습니다. 이렇게 하려면 일반적으로 파생 구성 요소를 만들고 내부 서비스 공급자에서 원래 구성 요소를 대체해야 합니다. 여러 확장에서 동일한 구성 요소를 변경하려는 경우 이 작업이 복잡해집니다. 이러한 경우 여러 확장에서 추가 논리를 제공할 수 있도록 플러그 인 API를 제공합니다.
서비스 목록
다음은 플러그 인 API 목록입니다.
| 서비스 | 설명 |
|---|---|
| ITypeMappingSourcePlugin | .NET 형식과 기본 저장소 형식 간에 매핑을 추가합니다. |
| IRelationalTypeMappingSourcePlugin | .NET 형식과 기본 관계형 데이터베이스 형식 간에 매핑을 추가합니다. |
| IConventionSetPlugin | 모델 빌드 규칙을 추가합니다. |
| IMemberTranslatorPlugin | .NET 속성에 대한 SQL 번역을 추가합니다. |
| IMethodCallTranslatorPlugin | .NET 메서드에 대한 SQL 번역을 추가합니다. |
| IAggregateMethodCallTranslatorPlugin | .NET 열거 가능한 메서드에 대한 SQL 번역을 추가합니다. |
| IEvaluatableExpressionFilterPlugin | 특정 식의 서버 평가를 강제합니다. |
| IProviderCodeGeneratorPlugin | 스캐폴드 제공자 및 DbContext 옵션. |
예제
다음은 이러한 API를 사용하는 몇 가지 확장입니다.
| Extension | 설명 |
|---|---|
| Microsoft.EntityFrameworkCore.Sqlite.NetTopologySuite | SpatiaLite 형식에 대한 형식 매핑 및 SQL 번역을 추가합니다. |
| Microsoft.EntityFrameworkCore.SqlServer.HierarchyId | SQL Server의 hierarchyid 형식에 대한 형식 매핑 및 SQL 번역을 추가합니다. |
| Microsoft.EntityFrameworkCore.SqlServer.NetTopologySuite | SQL Server의 지리 및 기하 도형 형식에 대한 형식 매핑 및 SQL 번역을 추가합니다. |
| EFCore.CheckConstraints | 관계형 데이터베이스 검사 제약 조건에 대한 모델 빌드 규칙을 추가합니다. |
| EFCore.NamingConventions | 대체 관계형 데이터베이스 테이블, 열 및 제약 조건 이름에 대한 모델 빌드 규칙을 추가합니다. |
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET