语言

IComplexProperty 接口

定义

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

public interface IComplexProperty : Microsoft.EntityFrameworkCore.Metadata.IPropertyBase, Microsoft.EntityFrameworkCore.Metadata.IReadOnlyComplexProperty
type IComplexProperty = interface
    interface IReadOnlyComplexProperty
    interface IReadOnlyPropertyBase
    interface IReadOnlyAnnotatable
    interface IPropertyBase
    interface IAnnotatable
Public Interface IComplexProperty
Implements IPropertyBase, IReadOnlyComplexProperty
派生
实现

注解

有关详细信息和示例,请参阅 复杂类型 。

属性

名称 说明
ClrType

获取此属性类对象保存的值的类型。

(继承自 IReadOnlyPropertyBase)
ComplexType

获取关联的复杂类型。

DeclaringEntityType
已过时.

获取此属性所属的实体类型。

(继承自 IPropertyBase)
DeclaringType

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

(继承自 IReadOnlyPropertyBase)
FieldInfo

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

(继承自 IReadOnlyPropertyBase)
IsCollection

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

(继承自 IReadOnlyPropertyBase)
IsNullable

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

(继承自 IReadOnlyComplexProperty)
Item[String]

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

(继承自 IReadOnlyAnnotatable)
Name

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

(继承自 IReadOnlyPropertyBase)
PropertyInfo

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

(继承自 IReadOnlyPropertyBase)
Sentinel

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

(继承自 IReadOnlyPropertyBase)

方法

名称 说明
AddRuntimeAnnotation(String, Object)

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

(继承自 IAnnotatable)
AnnotationsToDebugString(Int32)

获取针对对象上声明的所有批注的调试字符串。

(继承自 IReadOnlyAnnotatable)
FindAnnotation(String)

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

(继承自 IReadOnlyAnnotatable)
FindRuntimeAnnotation(String)

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

(继承自 IAnnotatable)
FindRuntimeAnnotationValue(String)

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

(继承自 IAnnotatable)
GetAnnotation(String)

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

(继承自 IReadOnlyAnnotatable)
GetAnnotations()

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

(继承自 IReadOnlyAnnotatable)
GetCollectionAccessor()

获取 IClrCollectionAccessor 此属性(如果是集合导航或复杂属性)。

(继承自 IPropertyBase)
GetCurrentValueComparer()

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

(继承自 IPropertyBase)
GetFieldName()

获取此属性的后盾字段的名称,或者 null 如果后盾字段未知。

(继承自 IReadOnlyPropertyBase)
GetGetter()

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

(继承自 IPropertyBase)
GetIndex()

获取此属性的属性索引。

(继承自 IPropertyBase)
GetMemberInfo(Boolean, Boolean)

PropertyInfo FieldInfo获取或用于获取或设置给定属性的值。

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

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

(继承自 IAnnotatable)
GetPropertyAccessMode()

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

(继承自 IReadOnlyPropertyBase)
GetRuntimeAnnotations()

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

(继承自 IAnnotatable)
IsIndexerProperty()

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

(继承自 IReadOnlyPropertyBase)
IsShadowProperty()

获取一个值,该值指示这是否为阴影属性。 阴影属性是实体类中没有相应属性的阴影属性。 该属性的当前值存储在实体类的实例中 ChangeTracker ,而不是存储在实体类的实例中。

(继承自 IReadOnlyPropertyBase)
RemoveRuntimeAnnotation(String)

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

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

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

(继承自 IAnnotatable)
ToDebugString(MetadataDebugStringOptions, Int32)

创建给定元数据的可读表示形式。

警告:不要依赖于返回的字符串的格式。 它仅用于调试,可以在版本之间任意更改。

(继承自 IReadOnlyComplexProperty)

扩展方法

名称 说明
GetCurrentValueComparer(IPropertyBase)

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

GetDefaultColumnMappings(IPropertyBase)

返回属性要映射到的默认列。

GetGetter(IPropertyBase)

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

请注意,对于阴影属性(IsShadowProperty(IPropertyBase))调用此方法是一个错误,因为此类属性没有关联 MemberInfo。

GetIndex(IPropertyBase)

获取此属性的属性索引。

GetJsonElementMappings(IPropertyBase)

返回此属性的 JSON 元素映射。

GetJsonPropertyName(IReadOnlyComplexProperty)

返回属性在面向 Cosmos 时映射到的属性名称。

GetJsonPropertyName(IReadOnlyComplexProperty)

获取用于映射到 JSON 列的实体的给定复杂属性的 JSON 属性名称的值。

GetMappedStoreObjects(IReadOnlyComplexProperty, StoreObjectType)

如果映射到 JSON 列,则返回此复杂属性映射到的类似表的存储对象。

此方法通常由数据库提供程序(和其他扩展)使用。 它通常不用于应用程序代码。

GetMemberInfo(IPropertyBase, Boolean, Boolean)

PropertyInfo FieldInfo获取或用于获取或设置给定属性的值。

请注意,对于阴影属性(IsShadowProperty(IPropertyBase))调用此方法是一个错误,因为此类属性没有关联 MemberInfo。

GetTableColumnMappings(IPropertyBase)

返回属性映射到的表列。

GetViewColumnMappings(IPropertyBase)

返回属性映射到的视图列。

IsIndexerProperty(IPropertyBase)

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

IsShadowProperty(IPropertyBase)
已过时.

获取一个值,该值指示这是否为阴影属性。 阴影属性是实体类中没有相应属性的阴影属性。 该属性的当前值存储在实体类的实例中 ChangeTracker ,而不是存储在实体类的实例中。

适用于