IMutableComplexType 接口

定义

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

public interface IMutableComplexType : Microsoft.EntityFrameworkCore.Metadata.IMutableTypeBase, Microsoft.EntityFrameworkCore.Metadata.IReadOnlyComplexType
type IMutableComplexType = interface
    interface IReadOnlyComplexType
    interface IReadOnlyTypeBase
    interface IReadOnlyAnnotatable
    interface IMutableTypeBase
    interface IMutableAnnotatable
Public Interface IMutableComplexType
Implements IMutableTypeBase, IReadOnlyComplexType
实现

注解

此接口在模型创建期间使用,并允许修改元数据。 生成模型后, IComplexProperty 表示相同元数据的只读视图。

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

属性

ClrType

获取用于表示此类型的实例的 CLR 类。 null如果该类型没有相应的 CLR 类 (称为阴影类型) ,则返回 。

(继承自 IReadOnlyTypeBase)
ComplexProperty

获取关联的属性。

ContainingEntityType

获取此实体类型或声明复杂属性链的实体类型。

(继承自 IReadOnlyTypeBase)
HasSharedClrType

获取一个值,该值指示此结构类型是否映射到 Type 其他结构类型也映射到的 。

(继承自 IReadOnlyTypeBase)
IsPropertyBag

获取一个值,该值指示此结构类型是否具有能够包含任意属性的索引器和可用于确定给定索引器属性是否包含值的方法。

(继承自 IReadOnlyTypeBase)
Item[String]

获取或设置具有给定名称的批注的值。

(继承自 IMutableAnnotatable)
Model

获取此类型所属的模型。

(继承自 IReadOnlyTypeBase)
Name

获取此类型的名称。

(继承自 IReadOnlyTypeBase)

方法

AddAnnotation(String, Object)

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

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

向 对象添加批注。

(继承自 IMutableAnnotatable)
AddComplexIndexerProperty(String, Type, Type, String, Boolean)

将索引器备份的复杂属性添加到此类型。

(继承自 IMutableTypeBase)
AddComplexProperty(MemberInfo, String, Boolean)

将复杂属性添加到此类型。

(继承自 IMutableTypeBase)
AddComplexProperty(String, Boolean)

将复杂属性添加到此类型。

(继承自 IMutableTypeBase)
AddComplexProperty(String, Type, MemberInfo, Type, String, Boolean)

将复杂属性添加到此类型。

(继承自 IMutableTypeBase)
AddComplexProperty(String, Type, Type, String, Boolean)

将复杂属性添加到此类型。

(继承自 IMutableTypeBase)
AddIgnored(String)

将给定的成员名称标记为忽略,从而阻止约定向类型添加匹配属性或导航。

(继承自 IMutableTypeBase)
AddIndexerProperty(String, Type)

将索引器备份的属性添加到此类型。

(继承自 IMutableTypeBase)
AddProperty(MemberInfo)

向此类型添加属性。

(继承自 IMutableTypeBase)
AddProperty(String)

向此类型添加属性。

(继承自 IMutableTypeBase)
AddProperty(String, Type)

向此类型添加属性。

(继承自 IMutableTypeBase)
AddProperty(String, Type, MemberInfo)

向此类型添加属性。

(继承自 IMutableTypeBase)
AnnotationsToDebugString(Int32)

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

(继承自 IReadOnlyAnnotatable)
DisplayName()

获取此结构类型的友好显示名称。

(继承自 IReadOnlyTypeBase)
DisplayName(Boolean)

获取给定 IReadOnlyTypeBase的友好显示名称。

(继承自 IReadOnlyTypeBase)
FindAnnotation(String)

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

(继承自 IMutableAnnotatable)
FindComplexProperty(MemberInfo)

获取具有给定成员信息的复杂属性。 null如果未找到任何属性,则返回 。

(继承自 IReadOnlyTypeBase)
FindComplexProperty(String)

获取具有给定名称的复杂属性。 null如果未定义具有给定名称的属性,则返回 。

(继承自 IReadOnlyTypeBase)
FindDeclaredComplexProperty(String)

查找在具有给定名称的类型上声明的属性。 不返回在基类型上定义的属性。

(继承自 IReadOnlyTypeBase)
FindDeclaredProperty(String)

查找在具有给定名称的类型上声明的属性。 不返回在基类型上定义的属性。

(继承自 IReadOnlyTypeBase)
FindIndexerPropertyInfo()

PropertyInfo返回关联 CLR 类型的索引器的 (如果存在)。

(继承自 IReadOnlyTypeBase)
FindMember(String)

获取具有给定名称的成员。 null如果未定义具有给定名称的成员,则返回 。

(继承自 IReadOnlyTypeBase)
FindMembersInHierarchy(String)

获取此类型、基类型或派生类型上具有给定名称的成员。

(继承自 IReadOnlyTypeBase)
FindProperties(IReadOnlyList<String>)

查找给定类型上的匹配属性。 null如果未找到任何属性,则返回 。

(继承自 IReadOnlyTypeBase)
FindProperty(MemberInfo)

获取具有给定成员信息的属性。 null如果未找到任何属性,则返回 。

(继承自 IReadOnlyTypeBase)
FindProperty(String)

获取具有给定名称的属性。 null如果未定义具有给定名称的属性,则返回 。

(继承自 IReadOnlyTypeBase)
GetAnnotation(String)

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

(继承自 IReadOnlyAnnotatable)
GetAnnotations()

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

(继承自 IMutableAnnotatable)
GetChangeTrackingStrategy()

获取用于此类型的更改跟踪策略。 此策略指示上下文如何检测类型实例的属性更改。

(继承自 IReadOnlyTypeBase)
GetComplexProperties()

获取在此类型和基类型上定义的复杂属性。

(继承自 IReadOnlyTypeBase)
GetDeclaredComplexProperties()

获取在此类型上声明的复杂属性。

(继承自 IReadOnlyTypeBase)
GetDeclaredMembers()

获取在此类型上声明的成员。

(继承自 IReadOnlyTypeBase)
GetDeclaredProperties()

获取在此类型上声明的所有标量属性。

(继承自 IReadOnlyTypeBase)
GetDerivedComplexProperties()

获取对派生自此类型的类型声明的复杂属性。

(继承自 IReadOnlyTypeBase)
GetDerivedProperties()

获取针对派生自此类型的类型声明的所有标量属性。

(继承自 IReadOnlyTypeBase)
GetIgnoredMembers()

获取所有忽略的成员。

(继承自 IMutableTypeBase)
GetMembers()

获取在此类型和基类型上定义的成员。

(继承自 IReadOnlyTypeBase)
GetNavigationAccessMode()

PropertyAccessMode获取用于此类型导航的 。

(继承自 IReadOnlyTypeBase)
GetProperties()

获取在此类型上定义的所有标量属性。

(继承自 IReadOnlyTypeBase)
GetProperty(String)

获取具有给定名称的属性。

(继承自 IReadOnlyTypeBase)
GetPropertyAccessMode()

PropertyAccessMode获取用于此类型的属性和导航的 。

(继承自 IReadOnlyTypeBase)
IsAbstract()

获取一个值,该值指示此结构类型是否表示抽象类型。

(继承自 IReadOnlyTypeBase)
IsAssignableFrom(IReadOnlyTypeBase)

确定此类型是派生自 (还是与给定类型) 相同。

(继承自 IReadOnlyTypeBase)
IsContainedBy(Type)

获取一个值,该值指示给定类型是否是此复杂类型的包含类型之一。

(继承自 IReadOnlyComplexType)
IsIgnored(String)

指示是否忽略给定的成员名称。

(继承自 IMutableTypeBase)
IsStrictlyDerivedFrom(IReadOnlyTypeBase)

确定此类型是否派生自 (但与给定类型) 不同。

(继承自 IReadOnlyTypeBase)
RemoveAnnotation(String)

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

(继承自 IMutableAnnotatable)
RemoveComplexProperty(IReadOnlyProperty)

从此类型中删除属性。

(继承自 IMutableTypeBase)
RemoveComplexProperty(String)

从此类型中删除属性。

(继承自 IMutableTypeBase)
RemoveIgnored(String)

删除忽略的成员名称。

(继承自 IMutableTypeBase)
RemoveProperty(IReadOnlyProperty)

从此类型中删除属性。

(继承自 IMutableTypeBase)
RemoveProperty(String)

从此类型中删除属性。

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

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

(继承自 IMutableAnnotatable)
SetChangeTrackingStrategy(Nullable<ChangeTrackingStrategy>)

设置要用于此类型的更改跟踪策略。 此策略指示上下文如何检测类型实例的属性更改。

(继承自 IMutableTypeBase)
SetNavigationAccessMode(Nullable<PropertyAccessMode>)

PropertyAccessMode设置用于此实体类型的导航的 。

(继承自 IMutableTypeBase)
SetOrRemoveAnnotation(String, Object)

设置存储在给定名称下的批注。 如果具有指定名称的注释已存在,则覆盖现有批注。 如果 null 提供,则删除现有批注。

(继承自 IMutableAnnotatable)
SetPropertyAccessMode(Nullable<PropertyAccessMode>)

PropertyAccessMode设置要用于此类型的属性和导航的 。

(继承自 IMutableTypeBase)
ShortName()

获取给定的 IReadOnlyTypeBase 短名称,该名称可用于其他标识符。

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

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

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

(继承自 IReadOnlyComplexType)

扩展方法

GetContainerColumnName(IReadOnlyComplexType)

获取复杂类型映射到的容器列名称。

FindMappingFragment(IReadOnlyTypeBase, StoreObjectIdentifier)

返回特定类似表的存储对象的类型映射。

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

GetContainerColumnName(IReadOnlyTypeBase)

获取类型映射到的容器列名称。

GetDeleteStoredProcedure(IReadOnlyTypeBase)

返回类型映射到的存储过程,以便删除; null 如果未映射到存储过程,则返回该存储过程。

GetFunctionName(IReadOnlyTypeBase)

返回类型映射到 null 的函数的名称,如果未映射到函数,则返回 。

GetInsertStoredProcedure(IReadOnlyTypeBase)

返回类型为插入 null 映射到的存储过程,如果未映射到存储过程,则返回该存储过程。

GetJsonPropertyName(IReadOnlyTypeBase)

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

GetMappingFragments(IReadOnlyTypeBase)

返回所有配置的类型映射片段。

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

GetMappingFragments(IReadOnlyTypeBase, StoreObjectType)

返回给定类型的所有已配置类型映射片段。

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

GetMappingStrategy(IReadOnlyTypeBase)

获取派生类型的映射策略。

GetSchema(IReadOnlyTypeBase)

返回包含映射表的数据库架构。

GetSqlQuery(IReadOnlyTypeBase)

返回用于为类型提供数据的 SQL 字符串, null 如果未映射到 SQL 字符串,则返回 。

GetTableName(IReadOnlyTypeBase)

返回类型映射到的表的名称,如果未 null 映射到表,则返回该名称。

GetUpdateStoredProcedure(IReadOnlyTypeBase)

返回类型为更新 null 映射到的存储过程,如果未映射到存储过程,则返回该存储过程。

GetViewName(IReadOnlyTypeBase)

返回类型映射到 null 的视图的名称,如果未映射到视图,则返回该视图的名称。

GetViewSchema(IReadOnlyTypeBase)

返回包含映射视图的数据库架构。

IsMappedToJson(IReadOnlyTypeBase)

获取一个值,该值指示指定的实体是否映射到 JSON 列。

适用于