Beispiel #1
0
        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);
        }
Beispiel #2
0
        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);
        }