Beispiel #1
0
        public async Task InitialiseAsync()
        {
            if (Schema == null)
            {
                DataSet ds = await ParquetUwp.LoadAsync(_file, 0, 0);

                Schema       = ds.Schema;
                MaxItemCount = (int)ds.TotalRowCount;
            }
        }
Beispiel #2
0
        public async Task <IList <TableRowView> > LoadRowsAsync(CancellationToken token, uint count, int baseIndex)
        {
            bool isInWindow = baseIndex + count < _rows.Count;

            if (!isInWindow)
            {
                DataSet ds = await ParquetUwp.LoadAsync(_file, _rows.Count, BatchSize);

                _rows.AddRange(ds);
            }

            var result = new List <TableRowView>((int)count);

            for (int i = baseIndex; i < baseIndex + count; i++)
            {
                Row row = _rows[i];
                result.Add(new TableRowView(row));
            }

            return(result);
        }