Table of Contents

Class PropertyBase

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 abstract class PropertyBase : ConventionAnnotatable, IMutablePropertyBase, IMutableAnnotatable, IConventionPropertyBase, IConventionAnnotatable, IRuntimePropertyBase, IPropertyBase, IReadOnlyPropertyBase, IAnnotatable, IReadOnlyAnnotatable
Inheritance
PropertyBase
Implements
Derived
Inherited Members
Extension Methods

Constructors

PropertyBase(string, PropertyInfo?, FieldInfo?, 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.

protected PropertyBase(string name, PropertyInfo? propertyInfo, FieldInfo? fieldInfo, ConfigurationSource configurationSource)

Parameters

name string
propertyInfo PropertyInfo
fieldInfo FieldInfo
configurationSource ConfigurationSource

Properties

Accessors

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 PropertyAccessors Accessors { get; }

Property Value

PropertyAccessors

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 abstract Type ClrType { get; }

Property Value

Type

CurrentValueComparer

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 IComparer<IUpdateEntry> CurrentValueComparer { get; }

Property Value

IComparer<IUpdateEntry>

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 abstract TypeBase DeclaringType { get; }

Property Value

TypeBase

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.

public virtual FieldInfo? FieldInfo { get; set; }

Property Value

FieldInfo

Getter

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 IClrPropertyGetter Getter { get; }

Property Value

IClrPropertyGetter

IsReadOnly

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 bool IsReadOnly { get; }

Property Value

bool

MaterializationSetter

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 IClrPropertySetter MaterializationSetter { get; }

Property Value

IClrPropertySetter

Name

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 string Name { get; }

Property Value

string

PropertyIndexes

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 PropertyIndexes PropertyIndexes { get; set; }

Property Value

PropertyIndexes

PropertyInfo

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 PropertyInfo? PropertyInfo { get; }

Property Value

PropertyInfo

Methods

CreateMemberAccess(IPropertyBase?, Expression, MemberInfo, 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 Expression CreateMemberAccess(IPropertyBase? property, Expression instanceExpression, MemberInfo memberInfo, bool fromContainingType)

Parameters

property IPropertyBase
instanceExpression Expression
memberInfo MemberInfo
fromContainingType bool

Returns

Expression

GetConfigurationSource()

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 GetConfigurationSource()

Returns

ConfigurationSource

GetFieldInfo(string, TypeBase, string, 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 FieldInfo? GetFieldInfo(string fieldName, TypeBase type, string propertyName, bool shouldThrow)

Parameters

fieldName string
type TypeBase
propertyName string
shouldThrow bool

Returns

FieldInfo

GetFieldInfoConfigurationSource()

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? GetFieldInfoConfigurationSource()

Returns

ConfigurationSource?

GetPropertyAccessMode()

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 PropertyAccessMode GetPropertyAccessMode()

Returns

PropertyAccessMode

GetPropertyAccessModeConfigurationSource()

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? GetPropertyAccessModeConfigurationSource()

Returns

ConfigurationSource?

GetSetter()

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 IClrPropertySetter GetSetter()

Returns

IClrPropertySetter

IsCompatible(FieldInfo, Type?, Type?, string?, 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(FieldInfo fieldInfo, Type? propertyType, Type? entityType, string? propertyName, bool shouldThrow)

Parameters

fieldInfo FieldInfo
propertyType Type
entityType Type
propertyName string
shouldThrow bool

Returns

bool

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 virtual FieldInfo? OnFieldInfoSet(FieldInfo? newFieldInfo, FieldInfo? oldFieldInfo)

Parameters

newFieldInfo FieldInfo
oldFieldInfo FieldInfo

Returns

FieldInfo

SetConfigurationSource(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 void SetConfigurationSource(ConfigurationSource configurationSource)

Parameters

configurationSource ConfigurationSource

SetField(string?, 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 FieldInfo? SetField(string? fieldName, ConfigurationSource configurationSource)

Parameters

fieldName string
configurationSource ConfigurationSource

Returns

FieldInfo

SetFieldInfo(FieldInfo?, 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 FieldInfo? SetFieldInfo(FieldInfo? fieldInfo, ConfigurationSource configurationSource)

Parameters

fieldInfo FieldInfo
configurationSource ConfigurationSource

Returns

FieldInfo

SetPropertyAccessMode(PropertyAccessMode?, 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 PropertyAccessMode? SetPropertyAccessMode(PropertyAccessMode? propertyAccessMode, ConfigurationSource configurationSource)

Parameters

propertyAccessMode PropertyAccessMode?
configurationSource ConfigurationSource

Returns

PropertyAccessMode?

UpdateConfigurationSource(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 void UpdateConfigurationSource(ConfigurationSource configurationSource)

Parameters

configurationSource ConfigurationSource