/// <returns>A task that represents the asynchronous operation</returns> public async Task <IActionResult> ExportProducts(string selectedIds) { //ensure that Avalara tax provider is active if (!await _taxPluginManager.IsPluginActiveAsync(AvalaraTaxDefaults.SystemName)) { return(RedirectToAction("List", "Product")); } if (!await _permissionService.AuthorizeAsync(StandardPermissionProvider.ManageTaxSettings)) { return(AccessDeniedView()); } //export items var exportedItems = await _avalaraTaxManager.ExportProductsAsync(selectedIds); if (exportedItems.HasValue) { if (exportedItems > 0) { _notificationService.SuccessNotification(string.Format(await _localizationService.GetResourceAsync("Plugins.Tax.Avalara.Items.Export.Success"), exportedItems)); } else { _notificationService.SuccessNotification(await _localizationService.GetResourceAsync("Plugins.Tax.Avalara.Items.Export.AlreadyExported")); } } else { _notificationService.ErrorNotification(await _localizationService.GetResourceAsync("Plugins.Tax.Avalara.Items.Export.Error")); } return(RedirectToAction("List", "Product")); }