public TimeBasedColumn TryGetColumn([NotNull] string key, [NotNull] TimeGuid columnName) { var rawKey = StringExtensions.StringToBytes(key); if (!implementation.TryGetColumn(rawKey, columnName.ToByteArray(), out var rawColumn)) { return(null); } return(rawColumn.ToTimeBasedColumn()); }
public TimeBasedColumn[] GetRange([NotNull] string key, [CanBeNull] TimeGuid exclusiveStartColumnName, [CanBeNull] TimeGuid inclusiveEndColumnName, int take, bool reversed) { if (take == int.MaxValue) { take--; } if (take <= 0) { return(new TimeBasedColumn[0]); } var rawKey = StringExtensions.StringToBytes(key); return(implementation.GetRow(rawKey, exclusiveStartColumnName?.ToByteArray(), inclusiveEndColumnName?.ToByteArray(), take + 1, reversed) .Select(TimeBasedColumnExtensions.ToTimeBasedColumn) .Where(x => x.Name != exclusiveStartColumnName) .Take(take) .ToArray()); }