Class NpgsqlModelValidator
- Assembly
- Npgsql.EntityFrameworkCore.PostgreSQL.dll
This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.
public class NpgsqlModelValidator : RelationalModelValidator, IModelValidator
- Inheritance
-
NpgsqlModelValidator
- Implements
- Inherited Members
-
RelationalModelValidator.ValidateData(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)ModelValidator.ValidateIgnoredMembers(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)ModelValidator.ValidateClrInheritance(IModel, IDiagnosticsLogger<DbLoggerCategory.Model.Validation>)
Constructors
NpgsqlModelValidator(ModelValidatorDependencies, RelationalModelValidatorDependencies, INpgsqlSingletonOptions)
This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.
public NpgsqlModelValidator(ModelValidatorDependencies dependencies, RelationalModelValidatorDependencies relationalDependencies, INpgsqlSingletonOptions npgsqlSingletonOptions)
Parameters
dependenciesModelValidatorDependenciesrelationalDependenciesRelationalModelValidatorDependenciesnpgsqlSingletonOptionsINpgsqlSingletonOptions
Methods
Validate(IModel, IDiagnosticsLogger<Validation>)
This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.
public override void Validate(IModel model, IDiagnosticsLogger<DbLoggerCategory.Model.Validation> logger)
Parameters
modelIModelloggerIDiagnosticsLogger<DbLoggerCategory.Model.Validation>
ValidateCompatible(IProperty, IProperty, string, in StoreObjectIdentifier, IDiagnosticsLogger<Validation>)
Validates the compatibility of two properties mapped to the same column.
protected override void ValidateCompatible(IProperty property, IProperty duplicateProperty, string columnName, in StoreObjectIdentifier storeObject, IDiagnosticsLogger<DbLoggerCategory.Model.Validation> logger)
Parameters
propertyIPropertyA property.
duplicatePropertyIPropertyAnother property.
columnNamestringThe column name.
storeObjectStoreObjectIdentifierThe identifier of the store object.
loggerIDiagnosticsLogger<DbLoggerCategory.Model.Validation>The logger to use.
ValidateIdentityVersionCompatibility(IModel)
Validates that identity columns are used only with PostgreSQL 10.0 or later.
protected virtual void ValidateIdentityVersionCompatibility(IModel model)
Parameters
modelIModelThe model to validate.
ValidateIndexIncludeProperties(IModel)
This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.
protected virtual void ValidateIndexIncludeProperties(IModel model)
Parameters
modelIModel
ValidateStoredProcedures(IModel, IDiagnosticsLogger<Validation>)
Validates the mapping/configuration of stored procedures in the model.
protected override void ValidateStoredProcedures(IModel model, IDiagnosticsLogger<DbLoggerCategory.Model.Validation> logger)
Parameters
modelIModelThe model to validate.
loggerIDiagnosticsLogger<DbLoggerCategory.Model.Validation>The logger to use.
ValidateTypeMappings(IModel, IDiagnosticsLogger<Validation>)
Validates the type mapping of properties the model.
protected override void ValidateTypeMappings(IModel model, IDiagnosticsLogger<DbLoggerCategory.Model.Validation> logger)
Parameters
modelIModelThe model to validate.
loggerIDiagnosticsLogger<DbLoggerCategory.Model.Validation>The logger to use.
ValidateValueGeneration(IEntityType, IKey, IDiagnosticsLogger<Validation>)
This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.
protected override void ValidateValueGeneration(IEntityType entityType, IKey key, IDiagnosticsLogger<DbLoggerCategory.Model.Validation> logger)
Parameters
entityTypeIEntityTypekeyIKeyloggerIDiagnosticsLogger<DbLoggerCategory.Model.Validation>