Table of Contents

Class NpgsqlModelValidator

Namespace
Npgsql.EntityFrameworkCore.PostgreSQL.Infrastructure.Internal
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

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

dependencies ModelValidatorDependencies
relationalDependencies RelationalModelValidatorDependencies
npgsqlSingletonOptions INpgsqlSingletonOptions

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

model IModel
logger IDiagnosticsLogger<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

property IProperty

A property.

duplicateProperty IProperty

Another property.

columnName string

The column name.

storeObject StoreObjectIdentifier

The identifier of the store object.

logger IDiagnosticsLogger<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

model IModel

The 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

model IModel

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

model IModel

The model to validate.

logger IDiagnosticsLogger<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

entityType IEntityType
key IKey
logger IDiagnosticsLogger<DbLoggerCategory.Model.Validation>