RuntimeComplexProperty 类

定义

表示结构类型的复杂属性。

public class RuntimeComplexProperty : Microsoft.EntityFrameworkCore.Metadata.RuntimePropertyBase, Microsoft.EntityFrameworkCore.Metadata.IComplexProperty
type RuntimeComplexProperty = class
    inherit RuntimePropertyBase
    interface IComplexProperty
    interface IReadOnlyComplexProperty
    interface IReadOnlyPropertyBase
    interface IReadOnlyAnnotatable
    interface IPropertyBase
    interface IAnnotatable
Public Class RuntimeComplexProperty
Inherits RuntimePropertyBase
Implements IComplexProperty
继承
RuntimeComplexProperty
实现

注解

有关详细信息和示例,请参阅 为实体类型和关系建模

构造函数

RuntimeComplexProperty(String, Type, String, Type, PropertyInfo, FieldInfo, RuntimeTypeBase, PropertyAccessMode, Boolean, Boolean, ChangeTrackingStrategy, PropertyInfo, Boolean)

这是一个支持 Entity Framework Core 基础结构的内部 API,不受与公共 API 相同的兼容性标准的约束。 可能会在任何版本中更改或删除它,恕不另行通知。 应仅在代码中直接使用它,并且非常谨慎,并且知道在更新到新的 Entity Framework Core 版本时,这样做可能会导致应用程序失败。

属性

ClrType

获取类似于属性的对象所保留的值的类型。

ComplexType

获取类似于属性的对象所保留的值的类型。

DebugView

这是一个支持 Entity Framework Core 基础结构的内部 API,不受与公共 API 相同的兼容性标准的约束。 可能会在任何版本中更改或删除它,恕不另行通知。 应仅在代码中直接使用它,并且非常谨慎,并且知道在更新到新的 Entity Framework Core 版本时,这样做可能会导致应用程序失败。

DeclaringEntityType

获取类似于此属性的对象所属的类型。

(继承自 RuntimePropertyBase)
DeclaringType

获取此属性所属的类型。

IsReadOnly

指示当前对象是否为只读对象。

(继承自 AnnotatableBase)
Item[String]

获取具有给定名称的值批注,如果不存在,则返回 null

(继承自 AnnotatableBase)
Name

获取类似于此属性的对象的名称。

(继承自 RuntimePropertyBase)
Sentinel

获取指示未设置此属性的 sentinel 值。

方法

AddAnnotation(String, Annotation)

向此对象添加批注。 如果已存在具有指定名称的批注,则引发 。

(继承自 AnnotatableBase)
AddAnnotation(String, Object)

向此对象添加批注。 如果已存在具有指定名称的批注,则引发 。

(继承自 AnnotatableBase)
AddAnnotations(IEnumerable<IAnnotation>)

向此对象添加批注。

(继承自 AnnotatableBase)
AddAnnotations(IReadOnlyDictionary<String,Object>)

向此对象添加批注。

(继承自 AnnotatableBase)
AddRuntimeAnnotation(String, Annotation)

向此对象添加运行时批注。 如果已存在具有指定名称的批注,则引发 。

(继承自 AnnotatableBase)
AddRuntimeAnnotation(String, Object)

向此对象添加运行时批注。 如果已存在具有指定名称的批注,则引发 。

(继承自 AnnotatableBase)
AddRuntimeAnnotations(IEnumerable<Annotation>)

向此对象添加运行时批注。

(继承自 AnnotatableBase)
AddRuntimeAnnotations(IReadOnlyDictionary<String,Object>)

向此对象添加运行时批注。

(继承自 AnnotatableBase)
CreateAnnotation(String, Object)

创建新批注。

(继承自 AnnotatableBase)
CreateRuntimeAnnotation(String, Object)

创建新的运行时批注。

(继承自 AnnotatableBase)
EnsureMutable()

如果模型为只读,则引发 。

(继承自 AnnotatableBase)
EnsureReadOnly()

如果模型不是只读的,则引发 。

(继承自 AnnotatableBase)
FindAnnotation(String)

获取具有给定名称的批注,如果不存在,则返回 null

(继承自 AnnotatableBase)
FindRuntimeAnnotation(String)

获取具有给定名称的运行时注释,如果不存在,则返回 null

(继承自 AnnotatableBase)
GetAnnotation(String)

获取具有给定名称的批注,如果不存在,则引发该批注。

(继承自 AnnotatableBase)
GetAnnotations()

获取当前 对象上的所有注释。

(继承自 AnnotatableBase)
GetOrAddRuntimeAnnotationValue<TValue,TArg>(String, Func<TArg,TValue>, TArg)

获取具有给定名称的运行时注释的值,如果不存在,则添加该值。

(继承自 AnnotatableBase)
GetRuntimeAnnotations()

获取当前 对象上的所有运行时注释。

(继承自 AnnotatableBase)
OnAnnotationSet(String, Annotation, Annotation)

在设置或删除批注时调用。

(继承自 AnnotatableBase)
RemoveAnnotation(String)

从此 对象中删除给定的批注。

(继承自 AnnotatableBase)
RemoveRuntimeAnnotation(String)

从此 对象中删除给定的运行时批注。

(继承自 AnnotatableBase)
SetAccessors(PropertyAccessors)

这是一个支持 Entity Framework Core 基础结构的内部 API,不受与公共 API 相同的兼容性标准的约束。 可能会在任何版本中更改或删除它,恕不另行通知。 应仅在代码中直接使用它,并且非常谨慎,并且知道在更新到新的 Entity Framework Core 版本时,这样做可能会导致应用程序失败。

(继承自 RuntimePropertyBase)
SetAnnotation(String, Annotation, Annotation)

设置存储在给定键下的批注。 如果具有指定名称的批注已存在,则覆盖现有批注。

(继承自 AnnotatableBase)
SetAnnotation(String, Object)

设置存储在给定键下的批注。 如果具有指定名称的批注已存在,则覆盖现有批注。

(继承自 AnnotatableBase)
SetGetter<TEntity,TStructuralType,TValue>(Func<TEntity,TValue>, Func<TEntity,Boolean>, Func<TStructuralType,TValue>, Func<TStructuralType,Boolean>)

这是一个支持 Entity Framework Core 基础结构的内部 API,不受与公共 API 相同的兼容性标准的约束。 可能会在任何版本中更改或删除它,恕不另行通知。 应仅在代码中直接使用它,并且非常谨慎,并且知道在更新到新的 Entity Framework Core 版本时,这样做可能会导致应用程序失败。

(继承自 RuntimePropertyBase)
SetRuntimeAnnotation(String, Annotation, Annotation)

设置存储在给定键下的运行时注释。 如果具有指定名称的批注已存在,则覆盖现有批注。

(继承自 AnnotatableBase)
SetRuntimeAnnotation(String, Object)

设置存储在给定键下的运行时注释。 如果具有指定名称的批注已存在,则覆盖现有批注。

(继承自 AnnotatableBase)
SetSetter<TEntity,TValue>(Action<TEntity,TValue>)

这是一个支持 Entity Framework Core 基础结构的内部 API,不受与公共 API 相同的兼容性标准的约束。 可能会在任何版本中更改或删除它,恕不另行通知。 应仅在代码中直接使用它,并且非常谨慎,并且知道在更新到新的 Entity Framework Core 版本时,这样做可能会导致应用程序失败。

(继承自 RuntimePropertyBase)
ToString()

返回表示当前对象的字符串。

显式接口实现

IAnnotatable.AddRuntimeAnnotation(String, Object)

向此对象添加运行时批注。 如果已存在具有指定名称的批注,则引发 。

(继承自 AnnotatableBase)
IAnnotatable.FindRuntimeAnnotation(String)

获取具有给定名称的运行时注释,如果不存在,则返回 null

(继承自 AnnotatableBase)
IAnnotatable.GetRuntimeAnnotations()

获取当前 对象上的所有运行时注释。

(继承自 AnnotatableBase)
IAnnotatable.RemoveRuntimeAnnotation(String)

从此 对象中删除给定的运行时批注。

(继承自 AnnotatableBase)
IAnnotatable.SetRuntimeAnnotation(String, Object)

设置存储在给定键下的运行时注释。 如果具有指定名称的批注已存在,则覆盖现有批注。

(继承自 AnnotatableBase)
IComplexProperty.ComplexType

获取关联的复杂类型。

IPropertyBase.DeclaringType

获取类似于此属性的对象所属的类型。

IPropertyBase.GetCurrentValueComparer()

IComparer<T>获取用于比较跟踪IUpdateEntry条目中的值的 。

(继承自 RuntimePropertyBase)
IPropertyBase.GetGetter()

获取 IClrPropertyGetter 用于读取此属性的值的 。

(继承自 RuntimePropertyBase)
IReadOnlyAnnotatable.FindAnnotation(String)

获取具有给定名称的批注,如果不存在,则返回 null

(继承自 AnnotatableBase)
IReadOnlyAnnotatable.GetAnnotations()

获取当前 对象上的所有注释。

(继承自 AnnotatableBase)
IReadOnlyAnnotatable.Item[String]

获取具有给定名称的批注的值,如果不存在,则返回 null

(继承自 AnnotatableBase)
IReadOnlyComplexProperty.ComplexType

获取关联的复杂类型。

IReadOnlyComplexProperty.IsCollection

获取一个值,该值指示此属性是否表示集合。

IReadOnlyComplexProperty.IsNullable

获取一个值,该值指示此属性是否可以包含 null

IReadOnlyPropertyBase.ClrType

获取类似于属性的对象所保留的值的类型。

(继承自 RuntimePropertyBase)
IReadOnlyPropertyBase.DeclaringType

获取类似于此属性的对象所属的类型。

IReadOnlyPropertyBase.FieldInfo

获取 FieldInfo 此属性类似对象的基础 CLR 字段的 。 这可能 null 适用于阴影属性,或者如果支持字段未知,则为 。

(继承自 RuntimePropertyBase)
IReadOnlyPropertyBase.GetPropertyAccessMode()

获取 PropertyAccessMode 用于此属性类似对象的 。

(继承自 RuntimePropertyBase)
IReadOnlyPropertyBase.PropertyInfo

获取 PropertyInfo 类似于此属性的对象的基础 CLR 属性的 。 这可能 null 适用于阴影属性,或者如果直接映射到字段,则为 。

(继承自 RuntimePropertyBase)
IRuntimePropertyBase.Accessors

表示结构类型的复杂属性。

(继承自 RuntimePropertyBase)
IRuntimePropertyBase.GetSetter()

表示结构类型的复杂属性。

(继承自 RuntimePropertyBase)
IRuntimePropertyBase.MaterializationSetter

表示结构类型的复杂属性。

(继承自 RuntimePropertyBase)
IRuntimePropertyBase.PropertyIndexes

表示结构类型的复杂属性。

(继承自 RuntimePropertyBase)

扩展方法

GetCurrentValueComparer(IPropertyBase)

IComparer<T>获取用于比较跟踪IUpdateEntry条目中的值的 。

GetIndex(IPropertyBase)

获取此属性的属性索引。

IsIndexerProperty(IPropertyBase)

获取一个值,该值指示这是否为索引器属性。 索引器属性是通过实体类上的索引器访问的属性。

适用于