IPropertyBase Interface

Definition

Base interface for navigations and properties.

public interface IPropertyBase : Microsoft.EntityFrameworkCore.Infrastructure.IAnnotatable
public interface IPropertyBase : Microsoft.EntityFrameworkCore.Infrastructure.IAnnotatable, Microsoft.EntityFrameworkCore.Metadata.IReadOnlyPropertyBase
type IPropertyBase = interface
    interface IAnnotatable
type IPropertyBase = interface
    interface IReadOnlyPropertyBase
    interface IReadOnlyAnnotatable
    interface IAnnotatable
Public Interface IPropertyBase
Implements IAnnotatable
Public Interface IPropertyBase
Implements IAnnotatable, IReadOnlyPropertyBase
Derived
Implements

Remarks

See Modeling entity types and relationships for more information and examples.

Properties

ClrType

Gets the type of value that this property-like object holds.

DeclaringEntityType
Obsolete.

Gets the entity type that this property belongs to.

DeclaringType

Gets the type that this property-like object belongs to.

FieldInfo

Gets the FieldInfo for the underlying CLR field for this property-like object. This may be null for shadow properties or if the backing field is not known.

IsShadowProperty

Gets a value indicating whether this is a shadow property. A shadow property is one that does not have a corresponding property in the entity class. The current value for the property is stored in the ChangeTracker rather than being stored in instances of the entity class.

Item[String]

Gets the value of the annotation with the given name, returning null if it does not exist.

(Inherited from IReadOnlyAnnotatable)
Name

Gets the name of this property-like object.

PropertyInfo

Gets the PropertyInfo for the underlying CLR property for this property-like object. This may be null for shadow properties or if mapped directly to a field.

Sentinel

Gets the sentinel value that indicates that this property is not set.

(Inherited from IReadOnlyPropertyBase)

Methods

AddRuntimeAnnotation(String, Object)

Adds a runtime annotation to this object. Throws if an annotation with the specified name already exists.

(Inherited from IAnnotatable)
AnnotationsToDebugString(Int32)

Gets the debug string for all annotations declared on the object.

(Inherited from IReadOnlyAnnotatable)
FindAnnotation(String)

Gets the annotation with the given name, returning null if it does not exist.

(Inherited from IReadOnlyAnnotatable)
FindRuntimeAnnotation(String)

Gets the runtime annotation with the given name, returning null if it does not exist.

(Inherited from IAnnotatable)
FindRuntimeAnnotationValue(String)

Gets the value of the runtime annotation with the given name, returning null if it does not exist.

(Inherited from IAnnotatable)
GetAnnotation(String)

Gets the annotation with the given name, throwing if it does not exist.

(Inherited from IReadOnlyAnnotatable)
GetAnnotations()

Gets all annotations on the current object.

(Inherited from IReadOnlyAnnotatable)
GetCurrentValueComparer()

Gets a IComparer<T> for comparing values in tracked IUpdateEntry entries.

GetFieldName()

Gets the name of the backing field for this property, or null if the backing field is not known.

(Inherited from IReadOnlyPropertyBase)
GetGetter()

Gets a IClrPropertyGetter for reading the value of this property.

GetIndex()

Gets the property index for this property.

GetMemberInfo(Boolean, Boolean)

Gets the PropertyInfo or FieldInfo that should be used to get or set a value for the given property.

GetOrAddRuntimeAnnotationValue<TValue,TArg>(String, Func<TArg,TValue>, TArg)

Gets the value of the runtime annotation with the given name, adding it if one does not exist.

(Inherited from IAnnotatable)
GetPropertyAccessMode()

Gets the PropertyAccessMode being used for this property. null indicates that the default property access mode is being used.

GetRuntimeAnnotations()

Gets all the runtime annotations on the current object.

(Inherited from IAnnotatable)
IsIndexerProperty()

Gets a value indicating whether this is an indexer property. An indexer property is one that is accessed through an indexer on the entity class.

(Inherited from IReadOnlyPropertyBase)
RemoveRuntimeAnnotation(String)

Removes the given runtime annotation from this object.

(Inherited from IAnnotatable)
SetRuntimeAnnotation(String, Object)

Sets the runtime annotation stored under the given key. Overwrites the existing annotation if an annotation with the specified name already exists.

(Inherited from IAnnotatable)

Extension Methods

AnnotationsToDebugString(IAnnotatable, Int32)

Gets the debug string for all annotations declared on the object.

GetAnnotation(IAnnotatable, String)

Gets the annotation with the given name, throwing if it does not exist.

GetCurrentValueComparer(IPropertyBase)

Gets a IComparer<T> for comparing values in tracked IUpdateEntry entries.

GetFieldName(IPropertyBase)

Gets the name of the backing field for this property, or null if the backing field is not known.

GetGetter(IPropertyBase)

Gets a IClrPropertyGetter for reading the value of this property.

Note that it is an error to call this method for a shadow property (IsShadowProperty(IPropertyBase)) since such a property has no associated MemberInfo.

GetIndex(IPropertyBase)

Gets the property index for this property.

GetMemberInfo(IPropertyBase, Boolean, Boolean)

Gets the PropertyInfo or FieldInfo that should be used to get or set a value for the given property.

Note that it is an error to call this method for a shadow property (IsShadowProperty(IPropertyBase)) since such a property has no associated MemberInfo.

GetPropertyAccessMode(IPropertyBase)

Gets the PropertyAccessMode being used for this property. null indicates that the default property access mode is being used.

IsIndexerProperty(IPropertyBase)

Gets a value indicating whether this is an indexer property. An indexer property is one that is accessed through an indexer on the entity class.

IsShadowProperty(IPropertyBase)
Obsolete.

Gets a value indicating whether this is a shadow property. A shadow property is one that does not have a corresponding property in the entity class. The current value for the property is stored in the ChangeTracker rather than being stored in instances of the entity class.

Applies to