public ActionResult Import(UserImportViewModel model)
        {
            IStorageServiceProvider storageService = null;

            if (model.StorageProvider == "azure")
            {
                storageService = new AzureBlobService();
            }
            if (model.StorageProvider == "aws")
            {
                storageService = new AWSBlobService();
            }
            if (storageService != null)
            {
                string myBucketName = System.Configuration.ConfigurationManager.AppSettings["ContainerBucketName"];
                Tuple <string, string> resultUpload = storageService.UploadPublicFile(model.ImportedFile.InputStream, model.ImportedFile.FileName, myBucketName);
                model.FinalUrl = resultUpload.Item1;
            }

            return(View("Index", model));
        }
 public ActionResult Import(UserImportViewModel model)
 {
     if (ModelState.IsValid)
     {
         ResultExcelImporter <UserImport> result = ExcelImporterMapper.ReadExcel <UserImport>(new ExcelFileInputData
         {
             ContentLength = model.ImportedFile.ContentLength,
             FileName      = model.ImportedFile.FileName,
             InputStream   = model.ImportedFile.InputStream
         });
         model.ImportResult = new List <UserRowImportResultViewModel>();
         foreach (RowResult rowResult in result.ResultMapExcel.RowResults)
         {
             UserRowImportResultViewModel userRowImportResultViewModel = new UserRowImportResultViewModel();
             userRowImportResultViewModel.Email          = rowResult.RowsValues.Email;
             userRowImportResultViewModel.EmployeeNumber = rowResult.RowsValues.EmployeeNumber;
             userRowImportResultViewModel.Name           = rowResult.RowsValues.Name;
             userRowImportResultViewModel.RowNumber      = rowResult.Number;
             userRowImportResultViewModel.Messages       = new List <string>();
             bool hasCustomError = false;
             User existingUser   = _userService.FindBy(x => x.Email == userRowImportResultViewModel.Email).FirstOrDefault();
             if (existingUser != null && !String.IsNullOrWhiteSpace(userRowImportResultViewModel.Email))
             {
                 userRowImportResultViewModel.Messages.Add("El correo electrónico del usuario ya se encuentra registrado");
             }
             hasCustomError = userRowImportResultViewModel.Messages.Any();
             if (rowResult.HasError)
             {
                 userRowImportResultViewModel.Messages = userRowImportResultViewModel.Messages.Concat(rowResult.ErrorMessages).ToList();
             }
             if (!rowResult.HasError && !hasCustomError)
             {
                 userRowImportResultViewModel.Messages.Add("Usuario registrado satisfactoriamente");
             }
         }
     }
     return(View("Import", model));
 }
        public ActionResult Index()
        {
            UserImportViewModel model = new UserImportViewModel();

            return(View(model));
        }
        public ActionResult Import()
        {
            UserImportViewModel model = new UserImportViewModel();

            return(View("Import", model));
        }