public async Task InitialiseAsync() { if (Schema == null) { DataSet ds = await ParquetUwp.LoadAsync(_file, 0, 0); Schema = ds.Schema; MaxItemCount = (int)ds.TotalRowCount; } }
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); }