Example #1
0
        public SqlServerBulkProcessor(EntityState state, IColumnSetupProvider columnSetupProvider, SqlBulkCopyOptions options)
            : base(state, columnSetupProvider)
        {
            SqlBulkCopyOptions = options;

            InboundColumns  = ImmutableList.CreateRange(columnSetupProvider.Build().Where(p => p.ValueDirection.HasFlag(ValueDirection.Write)));
            OutboundColumns = ImmutableList.CreateRange(columnSetupProvider.Build().Where(p => p.ValueDirection.HasFlag(ValueDirection.Read)));
        }
Example #2
0
        public DeleteBulkProcessor(IColumnSetupProvider columnSetupProvider, SqlBulkCopyOptions options, Action <SqlBulkCopy> setup = null)
            : base(EntityState.Deleted, columnSetupProvider, options)
        {
            _setup = setup;

            _targetTableName = $"[{columnSetupProvider.TableName}]";
            _bulkTable       = $"[#{columnSetupProvider.TableName}_{State}]";

            if (!string.IsNullOrWhiteSpace(columnSetupProvider.SchemaName))
            {
                _targetTableName = $"[{columnSetupProvider.SchemaName}].{_targetTableName}";
                _bulkTable       = $"[{columnSetupProvider.SchemaName}].{_bulkTable}";
            }
        }
        public InsertBulkProcessor(IColumnSetupProvider columnSetupProvider, SqlBulkCopyOptions options, Action <SqlBulkCopy> setup = null)
            : base(EntityState.Added, columnSetupProvider, options)
        {
            _setup           = setup;
            _targetTableName = $"[{columnSetupProvider.TableName}]";
            _bulkTable       = _targetTableName;

            if (OutboundColumns.Any())
            {
                _bulkTable = $"[#{columnSetupProvider.TableName}_{State}]";
            }

            if (!string.IsNullOrWhiteSpace(columnSetupProvider.SchemaName))
            {
                _targetTableName = $"[{columnSetupProvider.SchemaName}].{_targetTableName}";
                _bulkTable       = $"[{columnSetupProvider.SchemaName}].{_bulkTable}";
            }

            if (_bulkTable != _targetTableName)
            {
                _tempTableName = _bulkTable;
            }
        }
Example #4
0
 public BulkProcessor(EntityState state, IColumnSetupProvider columnSetupProvider)
 {
     State = state;
     ColumnSetupProvider = columnSetupProvider;
 }