public override void Save(IList <RowData> rowsData) { using (var context = new ClickHouseContext(_connectionString, _extendedActions)) { if (_maxPeriodRowData == DateTime.MinValue) { _maxPeriodRowData = context.GetRowsDataMaxPeriod(_system); } List <RowData> newEntities = new List <RowData>(); foreach (var itemRow in rowsData) { if (itemRow == null) { continue; } if (_maxPeriodRowData != DateTime.MinValue && itemRow.Period <= _maxPeriodRowData) { if (context.RowDataExistOnDatabase(_system, itemRow)) { continue; } } newEntities.Add(itemRow); } context.SaveRowsData(_system, newEntities); } }