RelationalModelValidator 类

定义

强制执行所有关系提供程序通用规则的验证程序。

public class RelationalModelValidator : Microsoft.EntityFrameworkCore.Infrastructure.ModelValidator
type RelationalModelValidator = class
    inherit ModelValidator
Public Class RelationalModelValidator
Inherits ModelValidator
继承
RelationalModelValidator

注解

服务生存期为 Singleton。 这意味着单个实例由许多 DbContext 实例使用。 实现必须是线程安全的。 此服务不能依赖于注册为 的服务 Scoped

有关详细信息 和示例,请参阅数据库提供程序和扩展的实现

构造函数

RelationalModelValidator(ModelValidatorDependencies, RelationalModelValidatorDependencies)

创建 RelationalModelValidator 的新实例。

属性

Dependencies

此服务的依赖项。

(继承自 ModelValidator)
RelationalDependencies

此服务的关系提供程序特定的依赖项。

TypeMapper
已过时。.

获取类型映射器。

方法

GetDefaultColumnValue(IProperty, StoreObjectIdentifier)

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

IsOwned(Type, IConventionModel)

返回一个值,该值指示该目标 CLR 类型是否对应于拥有的实体类型。

(继承自 ModelValidator)
IsRedundant(IForeignKey)

返回一个值,该值指示给定的外键是否冗余。

IsRedundant(IForeignKey)

返回一个值,该值指示给定的外键是否冗余。

(继承自 ModelValidator)
LogShadowProperties(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

(继承自 ModelValidator)
LogShadowProperties(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

记录由于没有匹配的 CLR 成员而创建的所有影子属性。

(继承自 ModelValidator)
ThrowPropertyNotMappedException(String, IConventionEntityType, IConventionProperty)

引发包含 InvalidOperationException 提供程序特定信息的消息(如果可用),指示无法映射属性的可能原因。

ThrowPropertyNotMappedException(String, IConventionEntityType, IConventionProperty)

引发包含 InvalidOperationException 提供程序特定信息的消息(如果可用),指示无法映射属性的可能原因。

(继承自 ModelValidator)
ThrowPropertyNotMappedException(String, IConventionTypeBase, IConventionProperty)

引发包含 InvalidOperationException 提供程序特定信息的消息(如果可用),指示无法映射属性的可能原因。

ThrowPropertyNotMappedException(String, IConventionTypeBase, IConventionProperty)

引发包含 InvalidOperationException 提供程序特定信息的消息(如果可用),指示无法映射属性的可能原因。

(继承自 ModelValidator)
Validate(IModel)

验证模型,如果发现任何错误,则会引发异常。

Validate(IModel)

验证模型,如果发现任何错误,则会引发异常。

(继承自 ModelValidator)
Validate(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型,如果发现任何错误,则会引发异常。

Validate(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型,如果发现任何错误,则会引发异常。

(继承自 ModelValidator)
ValidateBoolsWithDefaults(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

ValidateBoolsWithDefaults(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中属性的 Boolean 映射/配置。

ValidateChangeTrackingStrategy(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

(继承自 ModelValidator)
ValidateChangeTrackingStrategy(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中更改跟踪的映射/配置。

(继承自 ModelValidator)
ValidateClrInheritance(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

(继承自 ModelValidator)
ValidateClrInheritance(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中继承的映射/配置。

(继承自 ModelValidator)
ValidateClrInheritance(IModel, IEntityType, HashSet<IEntityType>)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

(继承自 ModelValidator)
ValidateCompatible(ICheckConstraint, ICheckConstraint, String, StoreObjectIdentifier, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证两个同名检查约束的兼容性。

ValidateCompatible(IForeignKey, IForeignKey, String, StoreObjectIdentifier, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证映射到同一外键约束的两个外键的兼容性。

ValidateCompatible(IIndex, IIndex, String, StoreObjectIdentifier, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证映射到同一表索引的两个索引的兼容性。

ValidateCompatible(IKey, IKey, String, StoreObjectIdentifier, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证映射到同一唯一约束的两个键的兼容性。

ValidateCompatible(IProperty, IProperty, String, StoreObjectIdentifier, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证映射到同一列的两个属性的兼容性。

ValidateCompatible(ITrigger, ITrigger, String, StoreObjectIdentifier, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证两个同名触发器的兼容性。

ValidateData(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

(继承自 ModelValidator)
ValidateData(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证数据 (映射/配置,例如模型中的种子数据) 。

ValidateData(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证数据 (映射/配置,例如模型中的种子数据) 。

(继承自 ModelValidator)
ValidateDataTypes(IModel)
已过时。.

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

ValidateDbFunctions(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

ValidateDbFunctions(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中函数的映射/配置。

ValidateDefaultValuesOnKeys(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

ValidateDefaultValuesOnKeys(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中默认值的映射/配置。

ValidateDefiningNavigations(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

(继承自 ModelValidator)
ValidateDefiningNavigations(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)
已过时。.

验证在模型中定义导航的映射/配置。

(继承自 ModelValidator)
ValidateDefiningQuery(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证在模型中定义查询的映射/配置。

(继承自 ModelValidator)
ValidateDiscriminatorValues(IEntityType)

验证派生自给定实体的所有实体类型的鉴别器和值。

(继承自 ModelValidator)
ValidateDiscriminatorValues(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)
已过时。.

验证模型中继承的映射/配置。

(继承自 ModelValidator)
ValidateFieldMapping(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

(继承自 ModelValidator)
ValidateFieldMapping(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证映射到模型中字段的属性的映射/配置。

(继承自 ModelValidator)
ValidateForeignKeys(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

(继承自 ModelValidator)
ValidateForeignKeys(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中外键的映射/配置。

(继承自 ModelValidator)
ValidateIgnoredMembers(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证是否未尝试忽略继承的属性。

(继承自 ModelValidator)
ValidateIndexProperties(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证任何一个索引的属性是否全部映射到至少一个公用表上的列。

ValidateInheritanceMapping(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

ValidateInheritanceMapping(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中继承的映射/配置。

ValidateInheritanceMapping(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中继承的映射。

(继承自 ModelValidator)
ValidateJsonEntities(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证 JSON 实体。

ValidateJsonEntityKey(StoreObjectIdentifier, IEntityType)

验证映射到 JSON 列的实体的键。

ValidateJsonEntityNavigations(StoreObjectIdentifier, IEntityType)

验证映射到 JSON 列的实体的导航。

ValidateJsonEntityProperties(StoreObjectIdentifier, IEntityType)

验证映射到 JSON 列的实体的属性。

ValidateJsonEntityRoot(StoreObjectIdentifier, IEntityType)

验证映射到 JSON 列的根实体。

ValidateKeylessTypes(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中没有键的实体类型的映射/配置。

(继承自 ModelValidator)
ValidateMappingFragments(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证实体类型映射片段。

ValidateMappingStrategy(IEntityType, String)

验证给定的映射策略是否受支持

ValidateNoCycles(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

(继承自 ModelValidator)
ValidateNoCycles(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型的映射/配置周期。

(继承自 ModelValidator)
ValidateNoMutableKeys(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

(继承自 ModelValidator)
ValidateNoMutableKeys(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中可变的映射/配置。

ValidateNoMutableKeys(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中可变的映射/配置。

(继承自 ModelValidator)
ValidateNonNullPrimaryKeys(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

(继承自 ModelValidator)
ValidateNonNullPrimaryKeys(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证所有可跟踪实体类型是否都具有主键。

(继承自 ModelValidator)
ValidateNoShadowEntities(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

(继承自 ModelValidator)
ValidateNoShadowEntities(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)
已过时。.

验证模型是否不包含任何没有相应的 CLR 类型的实体类型。

(继承自 ModelValidator)
ValidateNoShadowKeys(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

(继承自 ModelValidator)
ValidateNoShadowKeys(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中阴影键的映射/配置。

(继承自 ModelValidator)
ValidateOwnership(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

(继承自 ModelValidator)
ValidateOwnership(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中所有权的映射/配置。

(继承自 ModelValidator)
ValidatePrimitiveCollections(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型基元集合属性的映射。

(继承自 ModelValidator)
ValidatePropertyMapping(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证属性映射。

(继承自 ModelValidator)
ValidatePropertyOverrides(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证特定于表的属性替代。

ValidateQueryFilters(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

(继承自 ModelValidator)
ValidateQueryFilters(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中查询筛选器的映射/配置。

(继承自 ModelValidator)
ValidateQueryTypes(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

(继承自 ModelValidator)
ValidateRelationships(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证关系。

(继承自 ModelValidator)
ValidateSharedCheckConstraintCompatibility(IReadOnlyList<IEntityType>, StoreObjectIdentifier, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证给定共享表中检查约束的兼容性。

ValidateSharedColumnsCompatibility(IReadOnlyList<IEntityType>, StoreObjectIdentifier, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证在给定的类似表的对象中共享列的属性的兼容性。

ValidateSharedColumnsCompatibility(IReadOnlyList<IEntityType>, String)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

ValidateSharedColumnsCompatibility(IReadOnlyList<IEntityType>, String, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证给定表中共享列的属性的兼容性。

ValidateSharedForeignKeysCompatibility(IReadOnlyList<IEntityType>, StoreObjectIdentifier, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证给定共享表中外键的兼容性。

ValidateSharedForeignKeysCompatibility(IReadOnlyList<IEntityType>, String)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

ValidateSharedForeignKeysCompatibility(IReadOnlyList<IEntityType>, String, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证给定共享表中外键的兼容性。

ValidateSharedIndexesCompatibility(IReadOnlyList<IEntityType>, StoreObjectIdentifier, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证给定共享表中索引的兼容性。

ValidateSharedIndexesCompatibility(IReadOnlyList<IEntityType>, String)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

ValidateSharedIndexesCompatibility(IReadOnlyList<IEntityType>, String, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证给定共享表中索引的兼容性。

ValidateSharedKeysCompatibility(IReadOnlyList<IEntityType>, StoreObjectIdentifier, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证给定共享表中主密钥和备用密钥的兼容性。

ValidateSharedKeysCompatibility(IReadOnlyList<IEntityType>, String)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

ValidateSharedKeysCompatibility(IReadOnlyList<IEntityType>, String, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证给定共享表中主密钥和备用密钥的兼容性。

ValidateSharedTableCompatibility(IModel)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

ValidateSharedTableCompatibility(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中共享表的映射/配置。

ValidateSharedTableCompatibility(IReadOnlyList<IEntityType>, StoreObjectIdentifier, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证共享给定表的实体类型的兼容性。

ValidateSharedTableCompatibility(IReadOnlyList<IEntityType>, String)

此 API 支持 Entity Framework Core 基础结构,不应直接从代码使用。 将来的版本中可能会更改或删除此 API。

ValidateSharedTableCompatibility(IReadOnlyList<IEntityType>, String, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证共享给定表的实体类型的兼容性。

ValidateSharedTableCompatibility(IReadOnlyList<IEntityType>, String, String, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证共享给定表的实体类型的兼容性。

ValidateSharedTriggerCompatibility(IReadOnlyList<IEntityType>, StoreObjectIdentifier, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证给定共享表中触发器的兼容性。

ValidateSharedViewCompatibility(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中共享视图的映射/配置。

ValidateSharedViewCompatibility(IReadOnlyList<IEntityType>, String, String, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证共享给定视图的实体类型的兼容性。

ValidateSqlQueries(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中 SQL 查询的映射/配置。

ValidateStoredProcedures(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型中存储过程的映射/配置。

ValidateTriggers(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证触发器是否明确映射到一个表。

ValidateTriggers(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证触发器。

(继承自 ModelValidator)
ValidateTypeMappings(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证模型属性的类型映射。

(继承自 ModelValidator)
ValidateValueGeneration(IEntityType, IKey, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)

验证密钥值生成是否有效。

适用于