public DataSheetCollection Clone() { var clone = new DataSheetCollection(); _dataSheets.Each(sheet => clone.AddSheet(sheet)); return(clone); }
public DataSheetCollection GetDataSheetsByName(IReadOnlyList <string> sheetNames) { var sheets = new DataSheetCollection(); foreach (var sheetName in sheetNames) { if (_dataSheets.Contains(sheetName)) { sheets.AddSheet(_dataSheets[sheetName]); } } return(sheets); }
public DataSheetCollection Filter(string filter) { var filteredDataSheets = new DataSheetCollection(); foreach (var key in _dataSheets.Keys) { var dt = _dataSheets[key].ToDataTable(); var dv = new DataView(dt); dv.RowFilter = filter; var ds = new DataSheet(_dataSheets[key]); foreach (DataRowView drv in dv) { ds.AddRow(drv.Row.ItemArray.Select(c => c.ToString())); } filteredDataSheets.AddSheet(ds); } return(filteredDataSheets); }