IMutableProperty 接口

定义

表示结构类型的标量属性。

public interface IMutableProperty : Microsoft.EntityFrameworkCore.Metadata.IMutableAnnotatable, Microsoft.EntityFrameworkCore.Metadata.IProperty
public interface IMutableProperty : Microsoft.EntityFrameworkCore.Metadata.IMutablePropertyBase, Microsoft.EntityFrameworkCore.Metadata.IProperty
public interface IMutableProperty : Microsoft.EntityFrameworkCore.Metadata.IMutablePropertyBase, Microsoft.EntityFrameworkCore.Metadata.IReadOnlyProperty
type IMutableProperty = interface
    interface IProperty
    interface IPropertyBase
    interface IAnnotatable
    interface IMutableAnnotatable
type IMutableProperty = interface
    interface IProperty
    interface IPropertyBase
    interface IAnnotatable
    interface IMutablePropertyBase
    interface IMutableAnnotatable
type IMutableProperty = interface
    interface IReadOnlyProperty
    interface IReadOnlyPropertyBase
    interface IReadOnlyAnnotatable
    interface IMutablePropertyBase
    interface IMutableAnnotatable
Public Interface IMutableProperty
Implements IMutableAnnotatable, IProperty
Public Interface IMutableProperty
Implements IMutablePropertyBase, IProperty
Public Interface IMutableProperty
Implements IMutablePropertyBase, IReadOnlyProperty
实现

注解

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

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

属性

AfterSaveBehavior

获取一个值,该值指示在实体保存到数据库后是否可以修改此属性。

如果 Throw为 ,则在数据库中存在实体后,如果为此属性分配了新值,则会引发异常。

如果 Ignore为 ,则将忽略对数据库中已存在的实体的属性值所做的任何修改。

BeforeSaveBehavior

获取一个值,该值指示在实体保存到数据库之前是否可以修改此属性。

如果 Throw为 ,则如果在此属性处于 Added 状态时将值分配给此属性,则会引发异常。

如果 Ignore为 ,则在处于 状态时 Added ,将忽略任何值集。

ClrType

获取此类似属性的对象包含的值的类型。

(继承自 IReadOnlyPropertyBase)
DeclaringEntityType
已过时。.

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

DeclaringType

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

(继承自 IReadOnlyPropertyBase)
FieldInfo

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

(继承自 IReadOnlyPropertyBase)
IsConcurrencyToken

获取或设置一个值,该值指示此属性是否用作并发令牌。 将属性配置为并发令牌时,将在期间更新或删除 SaveChanges() 此实体类型的实例时检查数据库中的值,以确保自从数据库中检索实例以来,该实例未发生更改。 如果已更改,则会引发异常,并且更改不会应用于数据库。

IsNullable

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

IsPrimitiveCollection

如果属性具有与 CLR 类型的元素类型匹配的元素类型,则属性是基元集合。

(继承自 IReadOnlyProperty)
IsReadOnlyAfterSave
已过时。.

此属性已过时。 请改用 BeforeSaveBehavior

IsReadOnlyBeforeSave
已过时。.

此属性已过时。 请改用 BeforeSaveBehavior

IsStoreGeneratedAlways
已过时。.

此属性已过时。 请改用 BeforeSaveBehaviorAfterSaveBehavior

Item[String]

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

(继承自 IReadOnlyAnnotatable)
Name

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

(继承自 IReadOnlyPropertyBase)
PropertyInfo

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

(继承自 IReadOnlyPropertyBase)
RequiresValueGenerator

获取或设置一个值,该值指示在将新实体添加到上下文时,此属性 ValueGenerator 是否需要 生成值。

Sentinel

获取或设置 sentinel 值,该值指示未设置此属性。

ValueGenerated

获取或设置一个值,该值指示数据库何时生成此属性的值。 即使属性设置为由数据库生成,EF 仍可能尝试 (保存特定值,而不是在添加实体并分配值或将属性标记为已修改现有实体时,数据库) 生成一个值。 有关详细信息和GetAfterSaveBehavior()示例,请参阅 GetBeforeSaveBehavior() 和 。

方法

AddAnnotation(String, Object)

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

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

向 对象添加批注。

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

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

(继承自 IAnnotatable)
AnnotationsToDebugString(Int32)

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

(继承自 IReadOnlyAnnotatable)
CreateKeyEqualityComparer<TProperty>()

IEqualityComparer<T>为给定属性类型的值创建 。

(继承自 IProperty)
FindAnnotation(String)

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

(继承自 IReadOnlyAnnotatable)
FindContainingPrimaryKey()

获取使用此属性的主键 (包括) 包含此属性的复合主键。

FindFirstPrincipal()

如果给定属性是外键的一部分,则查找受给定属性约束的第一个主体属性。

FindRuntimeAnnotation(String)

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

(继承自 IAnnotatable)
FindRuntimeAnnotationValue(String)

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

(继承自 IAnnotatable)
FindTypeMapping()

返回此属性的类型映射。

(继承自 IReadOnlyProperty)
GetAfterSaveBehavior()

获取一个值,该值指示在实体保存到数据库后是否可以修改此属性。

(继承自 IReadOnlyProperty)
GetAnnotation(String)

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

(继承自 IReadOnlyAnnotatable)
GetAnnotations()

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

(继承自 IReadOnlyAnnotatable)
GetBeforeSaveBehavior()

获取一个值,该值指示在实体保存到数据库之前是否可以修改此属性。

(继承自 IReadOnlyProperty)
GetContainingForeignKeys()

获取使用此属性的所有外键 (包括) 包含此属性的复合外键。

GetContainingIndexes()

获取使用此属性的所有索引 (包括) 包含此属性的复合索引。

GetContainingKeys()

获取使用此属性的所有主键或备用键 (包括) 包含此属性的复合键。

GetCurrentValueComparer()

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

(继承自 IPropertyBase)
GetElementType()

获取由此属性表示的基元集合的元素的配置。

GetFieldName()

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

(继承自 IReadOnlyPropertyBase)
GetGetter()

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

(继承自 IPropertyBase)
GetIndex()

获取此属性的属性索引。

(继承自 IPropertyBase)
GetJsonValueReaderWriter()

JsonValueReaderWriter获取此属性的 ;null如果未设置,则获取 。

(继承自 IReadOnlyProperty)
GetKeyValueComparer()

ValueComparer获取要与此属性的键一起使用的 ;如果未设置任何设置,null则获取 。

(继承自 IReadOnlyProperty)
GetMaxLength()

获取此属性中允许的最大数据长度。 例如,如果 属性为 , String 则这是最大字符数。

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

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

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

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

(继承自 IAnnotatable)
GetPrecision()

获取此属性中允许的数据的精度。 例如,如果 属性为 , Decimal 则这是最大位数。

(继承自 IReadOnlyProperty)
GetPrincipals()

查找主体属性的列表,包括给定属性受约束的给定属性(如果给定属性是外键的一部分)。

GetPrincipals<T>()

查找主体属性的列表,包括给定属性受约束的给定属性(如果给定属性是外键的一部分)。

(继承自 IReadOnlyProperty)
GetPropertyAccessMode()

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

(继承自 IReadOnlyPropertyBase)
GetProviderClrType()

获取属性值在发送到数据库提供程序之前将转换为的类型。

(继承自 IReadOnlyProperty)
GetProviderValueComparer()

ValueComparer获取要用于此属性的提供程序值的 。

(继承自 IReadOnlyProperty)
GetRuntimeAnnotations()

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

(继承自 IAnnotatable)
GetScale()

获取此属性中允许的数据比例。 例如,如果 属性为 , Decimal 则这是小数位数的最大位数。

(继承自 IReadOnlyProperty)
GetTypeMapping()

CoreTypeMapping 最终完成的模型中返回给定属性的 。

(继承自 IReadOnlyProperty)
GetValueComparer()

ValueComparer获取此属性的 ;null如果未设置,则获取 。

(继承自 IReadOnlyProperty)
GetValueConverter()

获取此属性的自定义 ValueConverter 集。

(继承自 IReadOnlyProperty)
GetValueGeneratorFactory()

获取已设置为为此属性生成值的工厂(如果有)。

(继承自 IReadOnlyProperty)
IsForeignKey()

获取一个值,该值指示此属性是用作外键 (还是复合外键) 的一部分。

(继承自 IReadOnlyProperty)
IsIndex()

获取一个值,该值指示此属性是用作索引 (还是复合索引) 的一部分。

(继承自 IReadOnlyProperty)
IsIndexerProperty()

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

(继承自 IReadOnlyPropertyBase)
IsKey()

获取一个值,该值指示此属性是用作主键或备用键 (还是复合主键或备用键) 的一部分。

(继承自 IReadOnlyProperty)
IsPrimaryKey()

获取一个值,该值指示此属性是用作主键 (还是复合主键) 的一部分。

(继承自 IReadOnlyProperty)
IsShadowProperty()

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

(继承自 IReadOnlyPropertyBase)
IsUnicode()

获取一个值,该值指示属性是否可以持久保存 Unicode 字符。

(继承自 IReadOnlyProperty)
IsUniqueIndex()

获取一个值,该值指示此属性是用作唯一索引 (还是用作唯一复合索引) 的一部分。

(继承自 IReadOnlyProperty)
RemoveAnnotation(String)

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

(继承自 IMutableAnnotatable)
RemoveRuntimeAnnotation(String)

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

(继承自 IAnnotatable)
SetAfterSaveBehavior(Nullable<PropertySaveBehavior>)

获取或设置一个值,该值指示在实体保存到数据库后是否可以修改此属性。

SetAnnotation(String, Object)

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

(继承自 IMutableAnnotatable)
SetBeforeSaveBehavior(Nullable<PropertySaveBehavior>)

获取或设置一个值,该值指示在实体保存到数据库之前是否可以修改此属性。

SetElementType(Type)

设置由此属性表示的基元集合的元素的配置。

SetField(String)

设置此属性应使用的基础 CLR 字段。

(继承自 IMutablePropertyBase)
SetIsUnicode(Nullable<Boolean>)

设置一个值,该值指示此属性是否可以保留 Unicode 字符。

SetJsonValueReaderWriterType(Type)

设置要用于此属性的 此属性的类型 JsonValueReaderWriter<TValue>

SetMaxLength(Nullable<Int32>)

设置此属性中允许的最大数据长度。 例如,如果 属性为 , String 则这是最大字符数。

SetOrRemoveAnnotation(String, Object)

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

(继承自 IMutableAnnotatable)
SetPrecision(Nullable<Int32>)

设置此属性中允许的数据的精度。 例如,如果 属性为 , Decimal 则这是最大位数。

SetPropertyAccessMode(Nullable<PropertyAccessMode>)

PropertyAccessMode设置要用于此属性的 。

(继承自 IMutablePropertyBase)
SetProviderClrType(Type)

设置属性值在发送到数据库提供程序之前将转换为的类型。

SetProviderValueComparer(Type)

设置要用于此属性的提供程序值的自定义 ValueComparer

SetProviderValueComparer(ValueComparer)

设置要用于此属性的提供程序值的自定义 ValueComparer

SetRuntimeAnnotation(String, Object)

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

(继承自 IAnnotatable)
SetScale(Nullable<Int32>)

设置此属性中允许的数据规模。 例如,如果 属性为 , Decimal 则这是小数位数的最大位数。

SetTypeMapping(CoreTypeMapping)

CoreTypeMapping设置给定属性的

SetValueComparer(Type)

设置此属性的自定义 ValueComparer

SetValueComparer(ValueComparer)

设置此属性的自定义 ValueComparer

SetValueConverter(Type)

设置此属性的自定义 ValueConverter

SetValueConverter(ValueConverter)

设置此属性的自定义 ValueConverter

SetValueGeneratorFactory(Func<IProperty,IEntityType,ValueGenerator>)

设置工厂以用于生成此属性的值,或 null 清除任何以前设置的工厂。

SetValueGeneratorFactory(Func<IProperty,ITypeBase,ValueGenerator>)

设置工厂以用于生成此属性的值,或 null 清除任何以前设置的工厂。

SetValueGeneratorFactory(Type)

设置工厂以用于生成此属性的值,或 null 清除任何以前设置的工厂。

ToDebugString(MetadataDebugStringOptions, Int32)

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

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

(继承自 IReadOnlyProperty)

显式接口实现

IPropertyBase.GetPropertyAccessMode()

PropertyAccessMode获取用于此属性的 。 null 指示正在使用默认属性访问模式。

(继承自 IProperty)
IReadOnlyProperty.GetElementType()

获取由此属性表示的基元集合的元素的配置。

IReadOnlyProperty.IsConcurrencyToken

获取一个值,该值指示此属性是否用作并发令牌。 将属性配置为并发令牌时,将在期间更新或删除 SaveChanges() 此实体类型的实例时检查数据库中的值,以确保自从数据库中检索实例以来,该实例未发生更改。 如果已更改,则会引发异常,并且更改不会应用于数据库。

IReadOnlyProperty.IsNullable

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

IReadOnlyProperty.ValueGenerated

获取一个值,该值指示数据库何时生成此属性的值。 即使属性设置为由数据库生成,EF 仍可能尝试 (保存特定值,而不是在添加实体并分配值或将属性标记为已修改现有实体时,数据库) 生成一个值。 有关详细信息和GetAfterSaveBehavior()示例,请参阅 GetBeforeSaveBehavior() 和 。

扩展方法

GetJsonPropertyName(IProperty)

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

GetJsonPropertyName(IReadOnlyProperty)

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

GetPropertyName(IProperty)

返回面向 Cosmos 时使用的属性名称。

SetJsonPropertyName(IMutableProperty, String)

设置属性在面向 Cosmos 时映射到的属性名称。

SetPropertyName(IMutableProperty, String)

设置面向 Cosmos 时使用的属性名称。

AnnotationsToDebugString(IAnnotatable, Int32)

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

GetAnnotation(IAnnotatable, String)

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

IsColumnNullable(IProperty)

检查映射到给定 IProperty 的列在数据库中创建时是否可为 null。

这不仅取决于属性本身,还取决于它的映射方式。 例如,TPH 类型层次结构中的不可为 null 属性将映射到可以为空的列。

Scaffolding(IProperty)

表示结构类型的标量属性。

AddAnnotations(IMutableAnnotatable, IEnumerable<IAnnotation>)

向 对象添加批注。

GetAnnotation(IMutableAnnotatable, String)

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

GetOrAddAnnotation(IMutableAnnotatable, String, String)

获取具有给定键的现有批注,或者添加新批注(如果不存在)。

SetOrRemoveAnnotation(IMutableAnnotatable, String, Object)

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

SetField(IMutablePropertyBase, String)

设置此属性应使用的基础 CLR 字段。

支持字段通常按约定找到,如下所示: http://go.microsoft.com/fwlink/?LinkId=723277. 此方法可用于在未按约定找到正确字段的情况下显式设置后备字段。

默认情况下,当构造新对象时(通常从数据库查询实体时),将使用后备字段(如果找到或已指定)。 属性用于所有其他访问。 可以通过调用 SetPropertyAccessMode(IMutablePropertyBase, Nullable<PropertyAccessMode>)来更改此情况。

SetPropertyAccessMode(IMutablePropertyBase, Nullable<PropertyAccessMode>)

PropertyAccessMode设置要用于此属性的 。

SetPropertyAccessMode(IMutablePropertyBase, Nullable<PropertyAccessMode>)

PropertyAccessMode设置要用于此属性的 。

FindContainingPrimaryKey(IMutableProperty)

获取使用此属性的主键 (包括) 包含此属性的复合主键。

FindFirstPrincipal(IMutableProperty)

如果给定属性是外键的一部分,则查找受给定属性约束的第一个主体属性。

FindPrincipals(IMutableProperty)
已过时。.

查找主体属性的列表,包括给定属性受约束的给定属性(如果给定属性是外键的一部分)。

GetContainingForeignKeys(IMutableProperty)

获取使用此属性的所有外键 (包括) 包含此属性的复合外键。

GetContainingIndexes(IMutableProperty)

获取使用此属性的所有索引 (包括) 包含此属性的复合索引。

GetContainingKeys(IMutableProperty)

获取使用此属性的所有主键或备用键 (包括) 包含此属性的复合键。

GetContainingPrimaryKey(IMutableProperty)
已过时。.

获取使用此属性的主键 (包括) 包含此属性的复合主键。

IsUnicode(IMutableProperty, Nullable<Boolean>)

设置一个值,该值指示此属性是否可以保留 Unicode 字符。

SetAfterSaveBehavior(IMutableProperty, Nullable<PropertySaveBehavior>)

获取或设置一个值,该值指示在实体保存到数据库后是否可以修改此属性。

如果 Throw为 ,则在数据库中存在实体后,如果为此属性分配了新值,则会引发异常。

如果 Ignore为 ,则将忽略对数据库中已存在的实体的属性值所做的任何修改。

SetBeforeSaveBehavior(IMutableProperty, Nullable<PropertySaveBehavior>)

获取或设置一个值,该值指示在实体保存到数据库之前是否可以修改此属性。

如果 Throw为 ,则如果在此属性处于 Added 状态时将值分配给此属性,则会引发异常。

如果 Ignore为 ,则在处于 状态时 Added ,将忽略任何值集。

SetIsUnicode(IMutableProperty, Nullable<Boolean>)

设置一个值,该值指示此属性是否可以保留 Unicode 字符。

SetKeyValueComparer(IMutableProperty, ValueComparer)
已过时。.

在执行键比较时,为此属性设置自定义 ValueComparer

SetMaxLength(IMutableProperty, Nullable<Int32>)

设置此属性中允许的最大数据长度。 例如,如果 属性为 String ',则这是最大字符数。

SetPrecision(IMutableProperty, Nullable<Int32>)

设置此属性中允许的数据的精度。 例如,如果 属性为 , Decimal 则这是最大位数。

SetProviderClrType(IMutableProperty, Type)

设置属性值在发送到数据库提供程序之前将转换为的类型。

SetScale(IMutableProperty, Nullable<Int32>)

设置此属性中允许的数据规模。 例如,如果 属性为 , Decimal 则这是小数位数的最大位数。

SetStructuralValueComparer(IMutableProperty, ValueComparer)
已过时。.

为此属性设置结构副本的自定义 ValueComparer

SetTypeMapping(IMutableProperty, CoreTypeMapping)

CoreTypeMapping设置给定属性的

SetValueComparer(IMutableProperty, ValueComparer)

设置此属性的自定义 ValueComparer

SetValueConverter(IMutableProperty, ValueConverter)

设置此属性的自定义 ValueConverter

SetValueGeneratorFactory(IMutableProperty, Func<IProperty,IEntityType,ValueGenerator>)

设置工厂以用于生成此属性的值,或 null 清除任何以前设置的工厂。

设置 null 不会禁用此属性的值生成,它只是清除为此属性显式配置的任何生成器。 数据库提供程序可能仍具有属性类型的值生成器。

GetCurrentValueComparer(IPropertyBase)

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

GetFieldName(IPropertyBase)

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

GetGetter(IPropertyBase)

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

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

GetIndex(IPropertyBase)

获取此属性的属性索引。

GetMemberInfo(IPropertyBase, Boolean, Boolean)

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

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

GetPropertyAccessMode(IPropertyBase)

PropertyAccessMode获取用于此属性的 。 null 指示正在使用默认属性访问模式。

IsIndexerProperty(IPropertyBase)

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

IsShadowProperty(IPropertyBase)
已过时。.

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

CreateKeyEqualityComparer<TProperty>(IProperty)

IEqualityComparer<T>为给定属性类型的值创建 。

FindContainingPrimaryKey(IProperty)

获取使用此属性的主键 (包括) 包含此属性的复合主键。

FindFirstPrincipal(IProperty)

如果给定属性是外键的一部分,则查找受给定属性约束的第一个主体属性。

FindMapping(IProperty)
已过时。.

返回 CoreTypeMapping 给定属性的 。

FindPrincipals(IProperty)
已过时。.

查找主体属性的列表,包括给定属性受约束的给定属性(如果给定属性是外键的一部分)。

FindTypeMapping(IProperty)

返回 CoreTypeMapping 给定属性的 。

GetAfterSaveBehavior(IProperty)
已过时。.

获取一个值,该值指示在实体保存到数据库后是否可以修改此属性。

如果 Throw为 ,则在数据库中存在实体后,如果为此属性分配了新值,则会引发异常。

如果 Ignore为 ,则将忽略对数据库中已存在的实体的属性值所做的任何修改。

GetBeforeSaveBehavior(IProperty)
已过时。.

获取一个值,该值指示在实体保存到数据库之前是否可以修改此属性。

如果 Throw为 ,则如果在此属性处于 Added 状态时将值分配给此属性,则会引发异常。

如果 Ignore为 ,则在处于 状态时 Added ,将忽略任何值集。

GetContainingForeignKeys(IProperty)

获取使用此属性的所有外键 (包括) 包含此属性的复合外键。

GetContainingIndexes(IProperty)

获取使用此属性的所有索引 (包括) 包含此属性的复合索引。

GetContainingKeys(IProperty)

获取使用此属性的所有主键或备用键 (包括) 包含此属性的复合键。

GetContainingPrimaryKey(IProperty)
已过时。.

获取使用此属性的主键 (包括) 包含此属性的复合主键。

GetKeyValueComparer(IProperty)

ValueComparer获取要与此属性的键一起使用的 ;如果未设置任何设置,null则获取 。

GetMaxLength(IProperty)

获取此属性中允许的最大数据长度。 例如,如果 属性为 , String 则这是最大字符数。

GetPrecision(IProperty)

获取此属性中允许的数据的精度。 例如,如果 属性为 , Decimal 则这是最大位数。

GetProviderClrType(IProperty)

获取属性值在发送到数据库提供程序之前将转换为的类型。

GetScale(IProperty)

获取此属性中允许的数据比例。 例如,如果 属性为 , Decimal 则这是小数位数的最大位数。

GetStructuralValueComparer(IProperty)
已过时。.

ValueComparer获取要用于此属性的结构副本的 ;如果未设置,null则获取 。

GetTypeMapping(IProperty)

CoreTypeMapping 最终完成的模型中返回给定属性的 。

GetValueComparer(IProperty)

ValueComparer获取此属性的 ;null如果未设置,则获取 。

GetValueConverter(IProperty)
已过时。.

获取此属性的自定义 ValueConverter 集。

GetValueGeneratorFactory(IProperty)
已过时。.

获取已设置为为此属性生成值的工厂(如果有)。

IsForeignKey(IProperty)
已过时。.

获取一个值,该值指示此属性是用作外键 (还是复合外键) 的一部分。

IsIndex(IProperty)
已过时。.

获取一个值,该值指示此属性是用作索引 (还是复合索引) 的一部分。

IsKey(IProperty)
已过时。.

获取一个值,该值指示此属性是用作主键或备用键 (还是复合主键或备用键) 的一部分。

IsPrimaryKey(IProperty)
已过时。.

获取一个值,该值指示此属性是用作主键 (还是复合主键) 的一部分。

IsUnicode(IProperty)

获取一个值,该值指示属性是否可以持久保存 Unicode 字符。

IsUniqueIndex(IProperty)
已过时。.

获取一个值,该值指示此属性是用作唯一索引 (还是用作唯一复合索引) 的一部分。

ToDebugString(IProperty, MetadataDebugStringOptions, Int32)

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

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

Relational(IMutableProperty)

获取属性的关系数据库特定元数据。

Relational(IProperty)

获取属性的关系数据库特定元数据。

FindColumn(IProperty, StoreObjectIdentifier)

如果映射到给定的类似表的存储对象,则返回与此属性对应的列。

FindOverrides(IMutableProperty, StoreObjectIdentifier)

返回特定表类存储对象的属性分面替代。

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

FindOverrides(IProperty, StoreObjectIdentifier)

返回特定表类存储对象的属性分面替代。

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

FindOverrides(IReadOnlyProperty, StoreObjectIdentifier)

返回特定表类存储对象的属性分面替代。

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

FindRelationalMapping(IProperty)
已过时。.

返回 RelationalTypeMapping 最终模型上给定属性的 。

FindRelationalTypeMapping(IProperty)

返回 RelationalTypeMapping 最终模型上给定属性的 。

FindRelationalTypeMapping(IProperty, StoreObjectIdentifier)

返回 RelationalTypeMapping 最终模型上给定属性的 。

FindRelationalTypeMapping(IReadOnlyProperty)

返回 RelationalTypeMapping 最终模型上给定属性的 。

FindRelationalTypeMapping(IReadOnlyProperty, StoreObjectIdentifier)

返回 RelationalTypeMapping 最终模型上给定属性的 。

FindSharedStoreObjectRootProperty(IMutableProperty, StoreObjectIdentifier)

查找映射到类似共享表的对象中的同一列的第 IProperty 一个 。

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

FindSharedStoreObjectRootProperty(IProperty, StoreObjectIdentifier)

查找映射到类似共享表的对象中的同一列的第 IProperty 一个 。

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

FindSharedStoreObjectRootProperty(IReadOnlyProperty, StoreObjectIdentifier)

查找映射到类似共享表的对象中的同一列的第 IProperty 一个 。

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

FindSharedTableRootPrimaryKeyProperty(IProperty)

IProperty查找表示与给定属性相同的主键属性,但可能位于共享根表中的 。

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

GetCollation(IProperty)

返回要用于列的排序规则。

GetCollation(IProperty, StoreObjectIdentifier)

返回要用于列的排序规则。

GetCollation(IReadOnlyProperty)

返回要用于列的排序规则。

GetCollation(IReadOnlyProperty, StoreObjectIdentifier)

返回要用于列的排序规则。

GetColumnBaseName(IProperty)

返回属性将映射到的列的基名称。

GetColumnBaseName(IReadOnlyProperty)
已过时。.

返回属性将映射到的列的基名称。

GetColumnName(IProperty)
已过时。.

返回属性映射到的表列的名称。

GetColumnName(IProperty, StoreObjectIdentifier)

返回属性针对特定表映射到的列的名称。

GetColumnName(IReadOnlyProperty)

返回属性将映射到的列的名称。

GetColumnName(IReadOnlyProperty, StoreObjectIdentifier)

返回属性针对特定表映射到的列的名称。

GetColumnOrder(IReadOnlyProperty)

返回此属性映射到的列的顺序。

GetColumnOrder(IReadOnlyProperty, StoreObjectIdentifier)

返回此属性针对特定表映射到的列的顺序。

GetColumnType(IProperty)

返回属性映射到的列的数据库类型。

GetColumnType(IProperty, StoreObjectIdentifier)

返回属性映射到的列的数据库类型。

GetColumnType(IReadOnlyProperty)

如果找不到数据库类型, null 则返回属性映射到的列的数据库类型。

GetColumnType(IReadOnlyProperty, StoreObjectIdentifier)

如果找不到数据库类型, null 则返回属性映射到的列的数据库类型。

GetComment(IProperty)

返回此属性映射到的列的注释。

GetComment(IProperty, StoreObjectIdentifier)

返回此属性映射到的列的注释。

GetComment(IReadOnlyProperty)

返回此属性映射到的列的注释。

GetComment(IReadOnlyProperty, StoreObjectIdentifier)

返回此属性映射到的列的注释。

GetComputedColumnSql(IProperty)

返回用作此属性映射到的列的计算值的 SQL 表达式。

GetComputedColumnSql(IProperty, StoreObjectIdentifier)

返回用作此属性映射到的列的计算值的 SQL 表达式。

GetComputedColumnSql(IReadOnlyProperty)

返回用作此属性映射到的列的计算值的 SQL 表达式。

GetComputedColumnSql(IReadOnlyProperty, StoreObjectIdentifier)

返回用作此属性映射到的列的计算值的 SQL 表达式。

GetDefaultColumnBaseName(IProperty)

返回属性将映射到的列的默认基名称

GetDefaultColumnBaseName(IReadOnlyProperty)
已过时。.

返回属性将映射到的列的默认基名称

GetDefaultColumnMappings(IProperty)

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

GetDefaultColumnName(IProperty)
已过时。.

返回属性将映射到的默认表列名。

GetDefaultColumnName(IProperty, StoreObjectIdentifier)

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

GetDefaultColumnName(IReadOnlyProperty)

返回属性将映射到的列的默认基名称

GetDefaultColumnName(IReadOnlyProperty, StoreObjectIdentifier)

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

GetDefaultValue(IProperty)

返回对象,该对象用作此属性映射到的列的默认值。

GetDefaultValue(IProperty, StoreObjectIdentifier)

返回对象,该对象用作此属性映射到的列的默认值。

GetDefaultValue(IReadOnlyProperty)

返回对象,该对象用作此属性映射到的列的默认值。

GetDefaultValue(IReadOnlyProperty, StoreObjectIdentifier)

返回对象,该对象用作此属性映射到的列的默认值。

GetDefaultValueSql(IProperty)

返回用作此属性映射到的列的默认值的 SQL 表达式。

GetDefaultValueSql(IProperty, StoreObjectIdentifier)

返回用作此属性映射到的列的默认值的 SQL 表达式。

GetDefaultValueSql(IReadOnlyProperty)

返回用作此属性映射到的列的默认值的 SQL 表达式。

GetDefaultValueSql(IReadOnlyProperty, StoreObjectIdentifier)

返回用作此属性映射到的列的默认值的 SQL 表达式。

GetFunctionColumnMappings(IProperty)

返回属性映射到的函数列。

GetIsStored(IProperty)

获取此属性映射到的计算列的值是存储在数据库中,还是在读取时计算。

GetIsStored(IProperty, StoreObjectIdentifier)

获取此属性映射到的计算列的值是存储在数据库中,还是在读取时计算。

GetIsStored(IReadOnlyProperty)

获取此属性映射到的计算列的值是存储在数据库中,还是在读取时计算。

GetIsStored(IReadOnlyProperty, StoreObjectIdentifier)

获取此属性映射到的计算列的值是存储在数据库中,还是在读取时计算。

GetJsonPropertyName(IReadOnlyProperty)

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

GetMappedStoreObjects(IReadOnlyProperty, StoreObjectType)

返回此属性映射到的类似表的存储对象。

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

GetMaxLength(IProperty, StoreObjectIdentifier)

获取此属性中允许的最大数据长度。 例如,如果 属性为 , String 则这是最大字符数。

GetMaxLength(IReadOnlyProperty, StoreObjectIdentifier)

获取此属性中允许的最大数据长度。 例如,如果 属性为 , String 则这是最大字符数。

GetOrCreateOverrides(IMutableProperty, StoreObjectIdentifier)

返回特定类似表的存储对象的属性方面重写。

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

GetOverrides(IMutableProperty)

返回所有属性方面重写。

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

GetOverrides(IReadOnlyProperty)

返回所有属性方面重写。

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

GetPrecision(IProperty, StoreObjectIdentifier)

获取此属性中允许的数据的精度。 例如,如果 属性为 , Decimal 则这是最大位数。

GetPrecision(IReadOnlyProperty, StoreObjectIdentifier)

获取此属性中允许的数据的精度。 例如,如果 属性为 , Decimal 则这是最大位数。

GetRelationalTypeMapping(IProperty)

返回 RelationalTypeMapping 最终模型上给定属性的 。

GetRelationalTypeMapping(IReadOnlyProperty)

返回 RelationalTypeMapping 最终模型上给定属性的 。

GetScale(IProperty, StoreObjectIdentifier)

获取此属性中允许的数据小数位数。 例如,如果 属性为 , Decimal 则这是小数位数的最大位数。

GetScale(IReadOnlyProperty, StoreObjectIdentifier)

获取此属性中允许的数据小数位数。 例如,如果 属性为 , Decimal 则这是小数位数的最大位数。

GetSqlQueryColumnMappings(IProperty)

返回属性映射到的 SQL 查询列。

GetTableColumnMappings(IProperty)

返回属性映射到的表列。

GetViewColumnMappings(IProperty)

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

IsColumnNullable(IProperty)

检查在数据库中创建时,映射到给定 IProperty 的列是否可为 null。

这取决于属性本身及其映射方式。 例如,TPH 类型层次结构中派生的不可为 null 属性将映射到可以为 null 的列。 以及共享同一表的可选类型的属性。

IsColumnNullable(IProperty, StoreObjectIdentifier)

检查在数据库中创建时,映射到给定 IProperty 的列是否可为 null。

这取决于属性本身及其映射方式。 例如,TPH 类型层次结构中派生的不可为 null 属性将映射到可以为 null 的列。 以及共享同一表的可选类型的属性。

IsColumnNullable(IReadOnlyProperty)

检查在数据库中创建时,映射到给定 IProperty 的列是否可为 null。

IsColumnNullable(IReadOnlyProperty, StoreObjectIdentifier)

检查映射到给定属性的列在数据库中创建时是否可为 null。

IsFixedLength(IProperty)

返回一个标志,指示 属性是否能够仅存储固定长度的数据,如字符串。

IsFixedLength(IProperty, StoreObjectIdentifier)

返回一个标志,指示 属性是否能够仅存储固定长度的数据,如字符串。

IsFixedLength(IReadOnlyProperty)

返回一个标志,该标志指示属性是否能够仅存储固定长度的数据,如字符串。

IsFixedLength(IReadOnlyProperty, StoreObjectIdentifier)

返回一个标志,该标志指示属性是否能够仅存储固定长度的数据,如字符串。

IsUnicode(IProperty, StoreObjectIdentifier)

获取一个值,该值指示属性是否可以保留 Unicode 字符。

IsUnicode(IReadOnlyProperty, StoreObjectIdentifier)

获取一个值,该值指示属性是否可以保留 Unicode 字符。

RemoveOverrides(IMutableProperty, StoreObjectIdentifier)

删除特定类似表的存储对象的属性方面重写。

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

SetCollation(IMutableProperty, String)

配置要用于此属性映射到的列的排序规则。

SetColumnName(IMutableProperty, String)

设置属性映射到的列。

SetColumnName(IMutableProperty, String, StoreObjectIdentifier)

设置特定类似表的存储对象的属性映射到的列。

SetColumnOrder(IMutableProperty, Nullable<Int32>)

设置属性映射到的列的顺序。

SetColumnType(IMutableProperty, String)

设置属性映射到的列的数据库类型。

SetComment(IMutableProperty, String)

配置要应用于此属性映射到的列的注释。

SetComputedColumnSql(IMutableProperty, String)

设置用作此属性映射到的列的计算值的 SQL 表达式。

SetDefaultValue(IMutableProperty, Object)

设置对象,该对象用作此属性映射到的列的默认值。

SetDefaultValueSql(IMutableProperty, String)

设置用作此属性映射到的列的默认值的 SQL 表达式。

SetIsFixedLength(IMutableProperty, Nullable<Boolean>)

设置一个标志,指示属性是否能够仅存储固定长度的数据,如字符串。

SetIsStored(IMutableProperty, Nullable<Boolean>)

设置此属性映射到的计算列的值是存储在数据库中,还是在读取时计算。

SetJsonPropertyName(IMutableProperty, String)

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

TryGetDefaultValue(IReadOnlyProperty, StoreObjectIdentifier, Object)

返回对象,该对象用作此属性映射到的列的默认值。

TryGetDefaultValue(IReadOnlyProperty, Object)

返回对象,该对象用作此属性映射到的列的默认值。

Sqlite(IMutableProperty)

获取属性的特定于 SQLite 的元数据。

Sqlite(IProperty)

获取属性的特定于 SQLite 的元数据。

GetGeometricDimension(IProperty)

返回为此属性创建列时要使用的维度。

GetSrid(IProperty)

返回为此属性创建列时要使用的 SRID。

GetSrid(IProperty, StoreObjectIdentifier)

返回为此属性创建列时要使用的 SRID。

GetSrid(IReadOnlyProperty)

返回为此属性创建列时要使用的 SRID。

GetSrid(IReadOnlyProperty, StoreObjectIdentifier)

返回为此属性创建列时要使用的 SRID。

SetGeometricDimension(IMutableProperty, String)

设置在为此属性创建列时要使用的维度。

SetSrid(IMutableProperty, Nullable<Int32>)

设置为此属性创建列时要使用的 SRID。

SqlServer(IMutableProperty)

获取属性SQL Server特定元数据。

SqlServer(IProperty)

获取属性SQL Server特定元数据。

FindHiLoSequence(IProperty)

ISequence在模型中查找要用于 hi-lo 模式的 。

FindHiLoSequence(IProperty, StoreObjectIdentifier)

ISequence在模型中查找要用于 hi-lo 模式的 。

FindHiLoSequence(IReadOnlyProperty)

ISequence在模型中查找要用于 hi-lo 模式的 。

FindHiLoSequence(IReadOnlyProperty, StoreObjectIdentifier)

ISequence在模型中查找要用于 hi-lo 模式的 。

FindSequence(IReadOnlyProperty)

ISequence在模型中查找要用于键值生成模式的 。

FindSequence(IReadOnlyProperty, StoreObjectIdentifier)

ISequence在模型中查找要用于键值生成模式的 。

GetHiLoSequenceName(IProperty)

返回要用于 hi-lo 序列的名称。

GetHiLoSequenceName(IProperty, StoreObjectIdentifier)

返回要用于 hi-lo 序列的名称。

GetHiLoSequenceName(IReadOnlyProperty)

返回要用于 hi-lo 序列的名称。

GetHiLoSequenceName(IReadOnlyProperty, StoreObjectIdentifier)

返回要用于 hi-lo 序列的名称。

GetHiLoSequenceSchema(IProperty)

返回用于 hi-lo 序列的架构。

GetHiLoSequenceSchema(IProperty, StoreObjectIdentifier)

返回用于 hi-lo 序列的架构。

GetHiLoSequenceSchema(IReadOnlyProperty)

返回用于 hi-lo 序列的架构。

GetHiLoSequenceSchema(IReadOnlyProperty, StoreObjectIdentifier)

返回用于 hi-lo 序列的架构。

GetIdentityIncrement(IProperty)

返回标识增量。

GetIdentityIncrement(IProperty, StoreObjectIdentifier)

返回标识增量。

GetIdentityIncrement(IReadOnlyProperty)

返回标识增量。

GetIdentityIncrement(IReadOnlyProperty, StoreObjectIdentifier)

返回标识增量。

GetIdentitySeed(IProperty)

返回标识种子。

GetIdentitySeed(IProperty, StoreObjectIdentifier)

返回标识种子。

GetIdentitySeed(IReadOnlyProperty)

返回标识种子。

GetIdentitySeed(IReadOnlyProperty, StoreObjectIdentifier)

返回标识种子。

GetSequenceName(IReadOnlyProperty)

返回要用于键值生成序列的名称。

GetSequenceName(IReadOnlyProperty, StoreObjectIdentifier)

返回要用于键值生成序列的名称。

GetSequenceSchema(IReadOnlyProperty)

返回用于键值生成序列的架构。

GetSequenceSchema(IReadOnlyProperty, StoreObjectIdentifier)

返回用于键值生成序列的架构。

GetValueGenerationStrategy(IProperty)

返回 SqlServerValueGenerationStrategy 要用于 属性的 。

如果未为 属性设置任何策略,则要使用的策略将从 中获取 IModel

GetValueGenerationStrategy(IProperty, StoreObjectIdentifier)

返回 SqlServerValueGenerationStrategy 要用于 属性的 。

如果未为 属性设置任何策略,则要使用的策略将从 中获取 IModel

GetValueGenerationStrategy(IReadOnlyProperty)

返回 SqlServerValueGenerationStrategy 要用于 属性的 。

GetValueGenerationStrategy(IReadOnlyProperty, StoreObjectIdentifier)

返回 SqlServerValueGenerationStrategy 要用于 属性的 。

IsSparse(IReadOnlyProperty)

返回一个值,该值指示属性的列是否稀疏。

IsSparse(IReadOnlyProperty, StoreObjectIdentifier)

返回一个值,该值指示属性的列是否稀疏。

SetHiLoSequenceName(IMutableProperty, String)

设置要用于 hi-lo 序列的名称。

SetHiLoSequenceSchema(IMutableProperty, String)

设置要用于 hi-lo 序列的架构。

SetIdentityIncrement(IMutableProperty, Nullable<Int32>)

设置标识增量。

SetIdentityIncrement(IMutableProperty, Nullable<Int32>, StoreObjectIdentifier)

设置特定表的标识增量。

SetIdentitySeed(IMutableProperty, Nullable<Int32>)

设置标识种子。

SetIdentitySeed(IMutableProperty, Nullable<Int64>)

设置标识种子。

SetIdentitySeed(IMutableProperty, Nullable<Int64>, StoreObjectIdentifier)

设置特定表的标识种子。

SetIsSparse(IMutableProperty, Nullable<Boolean>)

设置一个值,该值指示属性的列是否稀疏。

SetSequenceName(IMutableProperty, String)

设置要用于键值生成序列的名称。

SetSequenceSchema(IMutableProperty, String)

设置要用于键值生成序列的架构。

SetValueGenerationStrategy(IMutableProperty, Nullable<SqlServerValueGenerationStrategy>)

SqlServerValueGenerationStrategy设置要用于 属性的 。

SetValueGenerationStrategy(IMutableProperty, Nullable<SqlServerValueGenerationStrategy>, StoreObjectIdentifier)

SqlServerValueGenerationStrategy设置要用于特定表的 属性的 。

适用于