ReferenceOwnershipBuilder 클래스

정의

일대일 소유권을 구성하기 위한 간단한 API를 제공합니다.

public class ReferenceOwnershipBuilder : Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilderBase, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalEntityTypeBuilder>
type ReferenceOwnershipBuilder = class
    inherit ReferenceReferenceBuilderBase
    interface IInfrastructure<InternalEntityTypeBuilder>
Public Class ReferenceOwnershipBuilder
Inherits ReferenceReferenceBuilderBase
Implements IInfrastructure(Of InternalEntityTypeBuilder)
상속
ReferenceOwnershipBuilder
파생
구현
IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalEntityTypeBuilder>

생성자

ReferenceOwnershipBuilder(EntityType, EntityType, InternalRelationshipBuilder)

이 API는 Entity Framework Core 인프라를 지원하며 코드에서 직접 사용할 수 없습니다. 이 API는 이후 릴리스에서 변경되거나 제거될 수 있습니다.

ReferenceOwnershipBuilder(InternalRelationshipBuilder, ReferenceOwnershipBuilder, Boolean, Boolean, Boolean, Boolean)

이 API는 Entity Framework Core 인프라를 지원하며 코드에서 직접 사용할 수 없습니다. 이 API는 이후 릴리스에서 변경되거나 제거될 수 있습니다.

속성

Builder

이 관계를 구성하는 데 사용되는 내부 작성기를 가져옵니다.

(다음에서 상속됨 ReferenceReferenceBuilderBase)
DeclaringEntityType

이 관계를 구성하는 데 사용되는 첫 번째 엔터티 형식을 가져옵니다.

(다음에서 상속됨 ReferenceReferenceBuilderBase)
Metadata

이 관계를 나타내는 외래 키입니다.

(다음에서 상속됨 ReferenceReferenceBuilderBase)
OwnedEntityType

구성되는 소유 엔터티 형식입니다.

RelatedEntityType

이 관계를 구성하는 데 사용되는 두 번째 엔터티 형식을 가져옵니다.

(다음에서 상속됨 ReferenceReferenceBuilderBase)

메서드

FindRelatedEntityType(String, String)

이 API는 Entity Framework Core 인프라를 지원하며 코드에서 직접 사용할 수 없습니다. 이 API는 이후 릴리스에서 변경되거나 제거될 수 있습니다.

FindRelatedEntityType(Type, String)

이 API는 Entity Framework Core 인프라를 지원하며 코드에서 직접 사용할 수 없습니다. 이 API는 이후 릴리스에서 변경되거나 제거될 수 있습니다.

HasChangeTrackingStrategy(ChangeTrackingStrategy)

ChangeTrackingStrategy 이 엔터티 형식에 사용할 을 구성합니다. 이 전략은 컨텍스트가 엔터티 형식의 instance 속성에 대한 변경 내용을 검색하는 방법을 나타냅니다.

HasData(Object[])

시드 데이터를 갖도록 이 엔터티를 구성합니다. 데이터 동작 마이그레이션을 생성하는 데 사용됩니다.

HasEntityTypeAnnotation(String, Object)

소유 엔터티 형식에 주석을 추가하거나 업데이트합니다. 에 지정된 annotation 키가 있는 주석이 이미 있는 경우 해당 값이 업데이트됩니다.

HasForeignKey(String[])

이 관계의 외래 키로 사용할 속성을 구성합니다.

엔터티 형식에 지정된 속성 이름이 없으면 새 섀도 상태 속성이 추가되어 외래 키로 사용됩니다. 섀도 상태 속성은 엔터티 클래스에 해당 속성이 없는 속성입니다. 속성의 현재 값은 엔터티 클래스의 인스턴스에 저장되지 않고 에 저장 ChangeTracker 됩니다.

가 지정되지 않은 경우 HasPrincipalKey(String[]) 외래 키 속성의 데이터 형식 및 순서를 주 엔터티 형식의 기본 키와 일치시키려고 시도합니다. 일치하지 않으면 고유 인덱스 형식을 형성하는 새 섀도 상태 속성이 주 엔터티 형식에 추가되어 참조 키로 사용됩니다.

HasForeignKeyAnnotation(String, Object)

외래 키에 주석을 추가하거나 업데이트합니다. 에 지정된 annotation 키가 있는 주석이 이미 있는 경우 해당 값이 업데이트됩니다.

HasIndex(String[])

지정된 속성에 대한 인덱스를 구성합니다. 지정된 속성 집합에 기존 인덱스가 있는 경우 구성을 위해 기존 인덱스가 반환됩니다.

HasKey(String[])

이 소유 엔터티 형식의 기본 키를 구성하는 속성을 설정합니다.

HasMany(String, String)

이 엔터티 형식에 관계에 있는 다른 형식의 인스턴스를 포함하는 컬렉션이 있는 관계를 구성합니다.

매개 변수 없이 이 메서드를 호출하면 엔터티 형식에 이러한 속성이 있더라도 탐색 속성을 사용하지 않고 관계의 이 쪽을 명시적으로 구성합니다. 탐색 속성을 사용할 경우 지정해야 합니다.

이 메서드를 호출한 후에는 에 대한 호출을 WithOne(String) 연결하여 관계를 완전히 구성해야 합니다. 연결된 호출 없이 이 메서드만 호출해도 유효한 관계가 생성되지 않습니다.

HasMany(Type, String)

이 엔터티 형식에 관계에 있는 다른 형식의 인스턴스를 포함하는 컬렉션이 있는 관계를 구성합니다.

매개 변수 없이 이 메서드를 호출하면 엔터티 형식에 이러한 속성이 있더라도 탐색 속성을 사용하지 않고 관계의 이 쪽을 명시적으로 구성합니다. 탐색 속성을 사용할 경우 지정해야 합니다.

이 메서드를 호출한 후에는 에 대한 호출을 WithOne(String) 연결하여 관계를 완전히 구성해야 합니다. 연결된 호출 없이 이 메서드만 호출해도 유효한 관계가 생성되지 않습니다.

HasOne(String, String)

이 엔터티 형식에 관계의 다른 형식의 단일 instance 가리키는 참조가 있는 관계를 구성합니다.

매개 변수 없이 이 메서드를 호출하면 엔터티 형식에 이러한 속성이 있더라도 탐색 속성을 사용하지 않고 관계의 이 쪽을 명시적으로 구성합니다. 탐색 속성을 사용할 경우 지정해야 합니다.

이 메서드를 호출한 후 또는 WithOne(String) 에 대한 호출을 WithMany(String) 연결하여 관계를 완전히 구성해야 합니다. 연결된 호출 없이 이 메서드만 호출해도 유효한 관계가 생성되지 않습니다.

HasOne(Type, String)

이 엔터티 형식에 관계의 다른 형식의 단일 instance 가리키는 참조가 있는 관계를 구성합니다.

매개 변수 없이 이 메서드를 호출하면 엔터티 형식에 이러한 속성이 있더라도 탐색 속성을 사용하지 않고 관계의 이 쪽을 명시적으로 구성합니다. 탐색 속성을 사용할 경우 지정해야 합니다.

이 메서드를 호출한 후 또는 WithOne(String) 에 대한 호출을 WithMany(String) 연결하여 관계를 완전히 구성해야 합니다. 연결된 호출 없이 이 메서드만 호출해도 유효한 관계가 생성되지 않습니다.

HasPrincipalKey(String[])

이 관계가 대상으로 하는 고유한 속성(즉, 소유자 엔터티 형식)을 구성합니다. 일반적으로 기본 키 이외의 속성을 주 속성으로 사용하려는 경우에만 이 메서드를 호출합니다. 지정된 속성이 아직 고유 제약 조건(또는 기본 키)이 아닌 경우 새 고유 제약 조건이 도입됩니다.

Ignore(String)

엔터티 형식에서 지정된 속성을 제외합니다. 이 메서드는 일반적으로 규칙에 의해 추가된 소유 엔터티 형식에서 속성을 제거하는 데 사용됩니다.

OnDelete(DeleteBehavior)

보안 주체가 삭제되거나 관계가 끊어질 때 관계의 종속 엔터티에 삭제 작업이 적용되는 방법을 구성합니다.

OwnsMany(String, String)

대상 엔터티가 이 엔터티의 소유(또는 일부)인 관계를 구성합니다.

각 소유권 관계에 대한 대상 엔터티 형식은 탐색 형식이 동일한 경우에도 다른 엔터티 형식으로 처리됩니다. 대상 엔터티 형식의 구성은 다른 소유권 관계의 대상 엔터티 형식에 적용되지 않습니다.

소유 엔터티에 대한 대부분의 작업은 해당 탐색을 사용하여 소유자 엔터티를 통해 액세스해야 합니다.

OwnsMany(String, String, Action<CollectionOwnershipBuilder>)

이 엔터티 형식이 관계의 다른 형식에 ID를 제공하는 관계를 구성합니다.

OwnsMany(Type, String)

대상 엔터티가 이 엔터티의 소유(또는 일부)인 관계를 구성합니다.

각 소유권 관계에 대한 대상 엔터티 형식은 탐색 형식이 동일한 경우에도 다른 엔터티 형식으로 처리됩니다. 대상 엔터티 형식의 구성은 다른 소유권 관계의 대상 엔터티 형식에 적용되지 않습니다.

소유 엔터티에 대한 대부분의 작업은 해당 탐색을 사용하여 소유자 엔터티를 통해 액세스해야 합니다.

OwnsMany(Type, String, Action<CollectionOwnershipBuilder>)

이 엔터티 형식이 관계의 다른 형식에 ID를 제공하는 관계를 구성합니다.

OwnsOne(String, String)

대상 엔터티가 이 엔터티의 소유(또는 일부)인 관계를 구성합니다. 대상 엔터티 키 값은 항상 속한 엔터티에서 전파됩니다.

각 소유권 관계에 대한 대상 엔터티 형식은 탐색 형식이 동일한 경우에도 다른 엔터티 형식으로 처리됩니다. 대상 엔터티 형식의 구성은 다른 소유권 관계의 대상 엔터티 형식에 적용되지 않습니다.

소유 엔터티에 대한 대부분의 작업은 해당 탐색을 사용하여 소유자 엔터티를 통해 액세스해야 합니다.

OwnsOne(String, String, Action<ReferenceOwnershipBuilder>)

대상 엔터티가 이 엔터티의 소유(또는 일부)인 관계를 구성합니다. 대상 엔터티 키 값은 항상 속한 엔터티에서 전파됩니다.

각 소유권 관계에 대한 대상 엔터티 형식은 탐색 형식이 동일한 경우에도 다른 엔터티 형식으로 처리됩니다. 대상 엔터티 형식의 구성은 다른 소유권 관계의 대상 엔터티 형식에 적용되지 않습니다.

소유 엔터티에 대한 대부분의 작업은 해당 탐색을 사용하여 소유자 엔터티를 통해 액세스해야 합니다.

OwnsOne(Type, String)

대상 엔터티가 이 엔터티의 소유(또는 일부)인 관계를 구성합니다. 대상 엔터티 키 값은 항상 속한 엔터티에서 전파됩니다.

각 소유권 관계에 대한 대상 엔터티 형식은 탐색 형식이 동일한 경우에도 다른 엔터티 형식으로 처리됩니다. 대상 엔터티 형식의 구성은 다른 소유권 관계의 대상 엔터티 형식에 적용되지 않습니다.

소유 엔터티에 대한 대부분의 작업은 해당 탐색을 사용하여 소유자 엔터티를 통해 액세스해야 합니다.

OwnsOne(Type, String, Action<ReferenceOwnershipBuilder>)

대상 엔터티가 이 엔터티의 소유(또는 일부)인 관계를 구성합니다. 대상 엔터티 키 값은 항상 속한 엔터티에서 전파됩니다.

각 소유권 관계에 대한 대상 엔터티 형식은 탐색 형식이 동일한 경우에도 다른 엔터티 형식으로 처리됩니다. 대상 엔터티 형식의 구성은 다른 소유권 관계의 대상 엔터티 형식에 적용되지 않습니다.

소유 엔터티에 대한 대부분의 작업은 해당 탐색을 사용하여 소유자 엔터티를 통해 액세스해야 합니다.

Property(String)

소유 엔터티 형식의 속성을 구성하는 데 사용할 수 있는 개체를 반환합니다. 지정된 이름의 속성이 없으면 새 속성이 추가됩니다.

이 오버로드를 사용하여 새 속성을 추가할 때 속성 이름은 엔터티 형식의 CLR 속성 또는 필드 이름과 일치해야 합니다. 이 오버로드는 새 섀도 상태 속성을 추가하는 데 사용할 수 없습니다.

Property(Type, String)

소유 엔터티 형식의 속성을 구성하는 데 사용할 수 있는 개체를 반환합니다. 지정된 이름의 속성이 없으면 새 속성이 추가됩니다.

새 속성을 추가할 때 이름이 같은 속성이 엔터티 클래스에 있으면 모델에 추가됩니다. 엔터티 클래스에 속성이 없으면 새 섀도 상태 속성이 추가됩니다. 섀도 상태 속성은 엔터티 클래스에 해당 속성이 없는 속성입니다. 속성의 현재 값은 엔터티 클래스의 인스턴스에 저장되지 않고 에 저장 ChangeTracker 됩니다.

Property<TProperty>(String)

소유 엔터티 형식의 속성을 구성하는 데 사용할 수 있는 개체를 반환합니다. 지정된 이름의 속성이 없으면 새 속성이 추가됩니다.

새 속성을 추가할 때 이름이 같은 속성이 엔터티 클래스에 있으면 모델에 추가됩니다. 엔터티 클래스에 속성이 없으면 새 섀도 상태 속성이 추가됩니다. 섀도 상태 속성은 엔터티 클래스에 해당 속성이 없는 속성입니다. 속성의 현재 값은 ChangeTracker 엔터티 클래스의 인스턴스에 저장되지 않고 에 저장됩니다.

UsePropertyAccessMode(PropertyAccessMode)

PropertyAccessMode 이 엔터티 형식의 모든 속성에 사용할 를 설정합니다.

기본적으로 지원 필드는 규칙에 의해 찾거나 지정된 경우 새 개체가 생성될 때 사용되며, 일반적으로 데이터베이스에서 엔터티를 쿼리할 때 사용됩니다. 속성은 다른 모든 액세스에 사용됩니다. 이 메서드를 호출하면 열거형에 설명된 대로 이 엔터티 형식의 모든 속성에 대한 동작이 PropertyAccessMode 변경됩니다.

이 메서드를 호출하면 이 엔터티의 모든 속성이 모델에 설정된 모든 액세스 모드를 재정의합니다.

명시적 인터페이스 구현

IInfrastructure<IMutableModel>.Instance

이 관계가 속한 모델입니다.

(다음에서 상속됨 ReferenceReferenceBuilderBase)
IInfrastructure<InternalEntityTypeBuilder>.Instance

소유 엔터티 형식을 구성하는 데 사용되는 내부 작성기를 가져옵니다.

IInfrastructure<InternalRelationshipBuilder>.Instance

이 관계를 구성하는 데 사용되는 내부 작성기를 가져옵니다.

(다음에서 상속됨 ReferenceReferenceBuilderBase)

확장 메서드

GetInfrastructure<T>(IInfrastructure<T>)

을 사용하여 IInfrastructure<T>숨겨지는 속성의 값을 가져옵니다.

이 메서드는 일반적으로 데이터베이스 공급자(및 기타 확장)에서 사용됩니다. 일반적으로 애플리케이션 코드에는 사용되지 않습니다.

HasConstraintName(ReferenceOwnershipBuilder, String)

관계형 데이터베이스를 대상으로 지정할 때 이 관계의 외래 키 제약 조건 이름을 구성합니다.

ToTable(ReferenceOwnershipBuilder, String)

관계형 데이터베이스를 대상으로 지정할 때 엔터티가 매핑하는 뷰 또는 테이블을 구성합니다.

ToTable(ReferenceOwnershipBuilder, String, String)

관계형 데이터베이스를 대상으로 지정할 때 엔터티가 매핑하는 뷰 또는 테이블을 구성합니다.

ForSqlServerIsMemoryOptimized(ReferenceOwnershipBuilder, Boolean)

메모리 최적화로 SQL Server 대상으로 지정할 때 엔터티가 매핑하는 테이블을 구성합니다.

적용 대상