Пример #1
0
        public async Task <IActionResult> UploadFile(UploadLogModelView uploadLogModelView)
        {
            if (ModelState.IsValid)
            {
                if (uploadLogModelView.FormFile != null)
                {
                    var uniqueFileName = GetUniqueFileName(uploadLogModelView.FormFile.FileName);

                    var uploads = Path.Combine(hostingEnvironment.WebRootPath, "uploads");
                    if (!Directory.Exists(uploads))
                    {
                        Directory.CreateDirectory(uploads);
                    }
                    var        filePath   = Path.Combine(uploads, uniqueFileName);
                    FileStream fileStream = new FileStream(filePath, FileMode.Create);
                    uploadLogModelView.FormFile.CopyTo(fileStream);
                    fileStream.Close();
                    await appDbContext.UploadedFiles.AddAsync(new UploadedFilesInfo()
                    {
                        Path = filePath, WasRead = false
                    });

                    await appDbContext.SaveChangesAsync();

                    await Task.Run(() => handleLog.GetData(filePath));



                    //    await handleLogParallel.GetData(filePath);
                }
            }
            return(RedirectToAction("Index"));
        }