Beispiel #1
0
        public static void BulkInsert <T>(this DbSet <T> dbSet, IEnumerable <T> data)
            where T : class
        {
            // Resolve Service
            var serviceFactory = new ServiceFactory <T>(dbSet);
            IBulkInsertService <T> bulkInsertService = serviceFactory.CreateBulkInsert();

            // Perform Bulk Insert
            bulkInsertService.WriteToServer(data);
        }
Beispiel #2
0
        public IBulkMergeService <TEntity> CreateBulkMerge()
        {
            ICommandProcessing <SqlTransaction> commandProcessor             = _commandProcessorFactory.Create();
            IDatabaseContext <SqlConnection, SqlTransaction> databaseContext = _databaseContextFactory.Create();
            IMappingAdapter <TEntity> mappingAdapter = _mappingAdapterFactory.Create();

            IBulkInsertService <TEntity> bulkInsert     = CreateBulkInsert(databaseContext, mappingAdapter);
            ICommandService <TEntity>    commandService = CreateCommandService(commandProcessor, mappingAdapter);

            return(new BulkMergeService <TEntity>(
                       bulkInsertService: bulkInsert,
                       commandService: commandService
                       ));
        }
 public BulkMergeService(IBulkInsertService <TRecord> bulkInsertService, ICommandService <TRecord> commandService)
 {
     _bulkInsertService = bulkInsertService ?? throw new ArgumentNullException(nameof(bulkInsertService));
     _commandService    = commandService ?? throw new ArgumentNullException(nameof(commandService));
 }