Class RuntimePropertyBase
- Namespace
- Microsoft.EntityFrameworkCore.Metadata
- Assembly
- Microsoft.EntityFrameworkCore.dll
Base type for navigations and properties.
public abstract class RuntimePropertyBase : AnnotatableBase, IRuntimePropertyBase, IPropertyBase, IReadOnlyPropertyBase, IAnnotatable, IReadOnlyAnnotatable
- Inheritance
-
RuntimePropertyBase
- Implements
- Derived
- Inherited Members
- Extension Methods
Remarks
See Modeling entity types and relationships for more information and examples.
Constructors
RuntimePropertyBase(string, PropertyInfo?, FieldInfo?, PropertyAccessMode)
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.
[EntityFrameworkInternal]
protected RuntimePropertyBase(string name, PropertyInfo? propertyInfo, FieldInfo? fieldInfo, PropertyAccessMode propertyAccessMode)
Parameters
name
stringpropertyInfo
PropertyInfofieldInfo
FieldInfopropertyAccessMode
PropertyAccessMode
Properties
ClrType
Gets the type of value that this property-like object holds.
protected abstract Type ClrType { get; }
Property Value
DeclaringType
Gets the type that this property-like object belongs to.
public abstract RuntimeTypeBase DeclaringType { get; }
Property Value
Name
Gets the name of this property-like object.
public virtual string Name { get; }
Property Value
Sentinel
public abstract object? Sentinel { get; }
Property Value
Methods
SetAccessors(PropertyAccessors)
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.
[EntityFrameworkInternal]
public virtual void SetAccessors(PropertyAccessors accessors)
Parameters
accessors
PropertyAccessors
SetGetter<TEntity, TStructuralType, TValue>(Func<TEntity, TValue>, Func<TEntity, bool>, Func<TStructuralType, TValue>, Func<TStructuralType, 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.
[EntityFrameworkInternal]
public virtual void SetGetter<TEntity, TStructuralType, TValue>(Func<TEntity, TValue> getter, Func<TEntity, bool> hasDefaultValue, Func<TStructuralType, TValue> structuralTypeGetter, Func<TStructuralType, bool> hasStructuralTypeSentinelValue) where TEntity : class
Parameters
getter
Func<TEntity, TValue>hasDefaultValue
Func<TEntity, bool>structuralTypeGetter
Func<TStructuralType, TValue>hasStructuralTypeSentinelValue
Func<TStructuralType, bool>
Type Parameters
TEntity
TStructuralType
TValue
SetSetter<TEntity, TValue>(Action<TEntity, TValue>)
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.
[EntityFrameworkInternal]
public virtual void SetSetter<TEntity, TValue>(Action<TEntity, TValue> setter) where TEntity : class
Parameters
setter
Action<TEntity, TValue>
Type Parameters
TEntity
TValue