private void LoadExcelDataTable(int reviewId, Stream st, Action <Exception, int> onRowAddError, RowsTransferredEventHandler rowsTransferred, Config.ImportConfig importConfig, Func <DataTable> dataTableCreator) { string sheetNamesCsv = importConfig.SheetsCsv; int skipRawRows = importConfig.SkipRawRows; DataTable dt; var ds = new DataSet(); var settings = new LoadTablesFromSpreadsheetSettings() { SheetSettings = new List <LoadRowsFromSpreadsheetSettings>(), CreateDataTable = dataTableCreator, }; var sheetNames = R.CSV.ParseLine(sheetNamesCsv); foreach (var sheetName in sheetNames) { settings.SheetSettings.Add( new LoadRowsFromSpreadsheetSettings { SheetName = sheetName, TypeConverter = U.SpreadsheetHelpers.ExcelTypeConverter, UseSheetNameForTableName = true, RowAddErrorHandler = onRowAddError, SkipRawRows = skipRawRows, }); } ds.LoadSheetsFromExcel(st, settings); dt = MergeIntoSingleTable(ds, dataTableCreator); FinalizeAndUpload(dt, reviewId, rowsTransferred); }
private void LoadEasi(int reviewId, Stream st, Action <Exception, int> onRowAddError, RowsTransferredEventHandler rowsTransferred) { DataTable dt; var ds = new DataSet(); var settings = new LoadTablesFromSpreadsheetSettings() { CreateDataTable = CreateEasiDataTable, LoadAllSheetsDefaultSettings = new LoadRowsFromSpreadsheetSettings { TypeConverter = U.SpreadsheetHelpers.ExcelTypeConverter, RowAddErrorHandler = onRowAddError } }; ds.LoadSheetsFromExcel(st, settings); dt = MergeIntoSingleTable(ds, CreateEasiDataTable); FinalizeAndUpload(dt, reviewId, rowsTransferred); }