Beispiel #1
0
        public async Task <FileInfoViewModel> SaveToTempFolder(IFormFile file)
        {
            if (file.Length > 0)
            {
                if (!Directory.Exists(_storagePath))
                {
                    Directory.CreateDirectory(_storagePath);
                }

                FileInfoViewModel createdFile = new FileInfoViewModel()
                {
                    Name        = file.FileName,
                    ContentType = file.ContentType,
                    Id          = Guid.NewGuid(),
                    SizeKB      = (int)(file.Length / 1000)
                };

                var saveFileName = createdFile.Id.ToString() + '.' + createdFile.Name.Split('.').Last();
                var savePath     = _storagePath + "\\" + saveFileName;

                using (var stream = new FileStream(savePath, FileMode.Create))
                {
                    await file.CopyToAsync(stream);
                }
                return(createdFile);
            }
            throw new ArgumentException("File length should be more then zero");
        }
Beispiel #2
0
        public FileStream GetFileStream(FileInfoViewModel file)
        {
            var fileName = file.Id + Path.GetExtension(file.Name);

            return(GetFileStream(fileName));
        }