Table of Contents

Class ComplexProperty

Namespace
Microsoft.EntityFrameworkCore.Metadata.Internal
Assembly
Microsoft.EntityFrameworkCore.dll

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public class ComplexProperty : PropertyBase, IRuntimePropertyBase, IMutableComplexProperty, IMutablePropertyBase, IMutableAnnotatable, IConventionComplexProperty, IConventionPropertyBase, IConventionAnnotatable, IComplexProperty, IReadOnlyComplexProperty, IPropertyBase, IReadOnlyPropertyBase, IAnnotatable, IReadOnlyAnnotatable
Inheritance
ComplexProperty
Implements
Inherited Members
Extension Methods

Constructors

ComplexProperty(string, Type, PropertyInfo?, FieldInfo?, TypeBase, string?, Type, bool, ConfigurationSource)

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public ComplexProperty(string name, Type type, PropertyInfo? propertyInfo, FieldInfo? fieldInfo, TypeBase declaringType, string? targetTypeName, Type targetType, bool collection, ConfigurationSource configurationSource)

Parameters

name string
type Type
propertyInfo PropertyInfo
fieldInfo FieldInfo
declaringType TypeBase
targetTypeName string
targetType Type
collection bool
configurationSource ConfigurationSource

Properties

Builder

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public virtual InternalComplexPropertyBuilder Builder { get; }

Property Value

InternalComplexPropertyBuilder

ClrType

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public override Type ClrType { get; }

Property Value

Type

ComplexType

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public virtual ComplexType ComplexType { get; }

Property Value

ComplexType

DebugView

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public virtual DebugView DebugView { get; }

Property Value

DebugView

DeclaringType

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public override TypeBase DeclaringType { get; }

Property Value

TypeBase

IsCollection

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public virtual bool IsCollection { get; }

Property Value

bool

IsInModel

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public virtual bool IsInModel { get; }

Property Value

bool

IsNullable

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public virtual bool IsNullable { get; set; }

Property Value

bool

Methods

GetIsNullableConfigurationSource()

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public virtual ConfigurationSource? GetIsNullableConfigurationSource()

Returns

ConfigurationSource?

IsCompatible(string, MemberInfo, TypeBase, Type, bool, bool)

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public static bool IsCompatible(string propertyName, MemberInfo memberInfo, TypeBase sourceType, Type targetType, bool shouldBeCollection, bool shouldThrow)

Parameters

propertyName string
memberInfo MemberInfo
sourceType TypeBase
targetType Type
shouldBeCollection bool
shouldThrow bool

Returns

bool

OnAnnotationSet(string, IConventionAnnotation?, IConventionAnnotation?)

Runs the conventions when an annotation was set or removed.

protected override IConventionAnnotation? OnAnnotationSet(string name, IConventionAnnotation? annotation, IConventionAnnotation? oldAnnotation)

Parameters

name string

The key of the set annotation.

annotation IConventionAnnotation

The annotation set.

oldAnnotation IConventionAnnotation

The old annotation.

Returns

IConventionAnnotation

The annotation that was set.

OnFieldInfoSet(FieldInfo?, FieldInfo?)

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

protected override FieldInfo? OnFieldInfoSet(FieldInfo? newFieldInfo, FieldInfo? oldFieldInfo)

Parameters

newFieldInfo FieldInfo
oldFieldInfo FieldInfo

Returns

FieldInfo

OnPropertyNullableChanged()

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

protected virtual bool? OnPropertyNullableChanged()

Returns

bool?

SetIsNullable(bool?, ConfigurationSource)

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public virtual bool? SetIsNullable(bool? nullable, ConfigurationSource configurationSource)

Parameters

nullable bool?
configurationSource ConfigurationSource

Returns

bool?

SetRemovedFromModel()

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public virtual void SetRemovedFromModel()

ToString()

This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.

public override string ToString()

Returns

string