Пример #1
0
        public async Task OnPostAsync()
        {
            var user = await userManager.GetUserAsync(User);

            string mydir = Path.Combine(environment.WebRootPath, "imagefolder", user.Id);

            Directory.CreateDirectory(mydir);

            foreach (var file in Upload)
            {
                FileInfo f            = new FileInfo(file.FileName);
                string   originalFile = Path.Combine(mydir, file.FileName);

                using (var fileStream = new FileStream(originalFile, FileMode.Create))
                {
                    await file.CopyToAsync(fileStream);
                }
                using Bitmap b = new Bitmap(originalFile);

                string thumb   = Helper.SaveResizedFile(b, originalFile, 200, 200);
                string resized = Helper.SaveResizedFile(b, originalFile, b.Width / 2, b.Height / 2);

                await AzureStorage.AddFilesAsync(originalFile, user.Id);

                await AzureStorage.AddFilesAsync(Path.Combine(mydir, thumb), user.Id);

                await AzureStorage.AddFilesAsync(Path.Combine(mydir, resized), user.Id);

                var myImages = new MyImages(ijpContext, user.Id);
                myImages.AddImageFromFile(originalFile, resized, thumb, user.Id);

                System.IO.File.Delete(file.FileName);
            }
            Directory.Delete(Path.Combine(environment.WebRootPath, "imagefolder", user.Id), true);
        }