private async void OpenFile(object obj) { IsLoading = true; var dialog = new OpenFileDialog { Filter = "Excel files (*.xlsx)|*.xlsx", Multiselect = false }; if (dialog.ShowDialog() == true) { using (_excelWorker) { _fileName = dialog.FileName; await _excelWorker.OpenFileAsync(_fileName); _workSheet = await _excelWorker.GetWorkSheetAsync(1); InputRows.Clear(); var data = await _excelWorker.ExctractDataAsync <SapPersonExcelRow>(_workSheet.TableName); data.ForEach(_ => InputRows.Add(_)); } } IsLoading = false; }
public Task <IEnumerable <T> > ExctractDataAsync <T>(string sheetName) where T : class, new() { _logger.Info($"Extracting {(typeof(T)).Name} from {FileName}"); try { return(_decoratee.ExctractDataAsync <T>(sheetName)); } catch (Exception ex) { _logger.Error($"Error during extracting {(typeof(T)).Name} from {FileName}", ex); throw; } }