Пример #1
0
        public override ValueGenerator Select(IProperty property, IEntityType entityType)
        {
            Check.NotNull(property, nameof(property));
            Check.NotNull(entityType, nameof(entityType));

            return(property.GetValueGeneratorFactory() == null &&
                   property.Npgsql().ValueGenerationStrategy == NpgsqlValueGenerationStrategy.SequenceHiLo
                ? _sequenceFactory.Create(property, Cache.GetOrAddSequenceState(property), _connection)
                : base.Select(property, entityType));
        }
        public override ValueGenerator Select(IProperty property)
        {
            Check.NotNull(property, nameof(property));

            var strategy = property.Npgsql().ValueGenerationStrategy;

            if (property.ClrType.IsInteger() &&
                strategy == NpgsqlValueGenerationStrategy.Sequence)
            {
                return(_sequenceFactory.Create(property, _cache.GetOrAddSequenceState(property), _connection));
            }

            return(_cache.GetOrAdd(property, Create));
        }
Пример #3
0
    public override ValueGenerator Select(IProperty property, IEntityType entityType)
    {
        Check.NotNull(property, nameof(property));
        Check.NotNull(entityType, nameof(entityType));

        return(property.GetValueGeneratorFactory() is null &&
               property.GetValueGenerationStrategy() == NpgsqlValueGenerationStrategy.SequenceHiLo
                ? _sequenceFactory.Create(
                   property,
                   Cache.GetOrAddSequenceState(property, _connection),
                   _connection,
                   _rawSqlCommandBuilder,
                   _commandLogger)
                : base.Select(property, entityType));
    }