예제 #1
0
        public void Save(User user, FormFileDto uploadedFile)
        {
            if (uploadedFile.Length > 0)
            {
                var    imageId = Guid.NewGuid();
                string path    = null;

                if (uploadedFile != null)
                {
                    path = "/Image/" + imageId + Path.GetExtension(uploadedFile.FileName);
                }

                using (var ms = new MemoryStream())
                {
                    var fileBytes = uploadedFile.ContentStream.ToArray();
                    _imageStorageService.Save(fileBytes, path);
                }
                ImageMetaData image = new ImageMetaData()
                {
                    UserId = user.Id,
                    Path   = path,
                };
                _imageMetaDataRepository.Save(image);
            }
        }
예제 #2
0
        public async Task <IActionResult> Register(RegisterViewModel model, IFormFile uploadedFile)
        {
            if (ModelState.IsValid)
            {
                User user = new User
                {
                    Email    = model.Email,
                    UserName = model.Email,
                    Year     = model.Year,
                };

                var result = await _userManager.CreateAsync(user, model.Password);

                FormFileDto uploadedFiles = new FormFileDto
                {
                    Length   = uploadedFile.Length,
                    FileName = uploadedFile.FileName,
                };

                uploadedFile.CopyTo(uploadedFiles.ContentStream);
                _imageService.Save(user, uploadedFiles);

                if (result.Succeeded)
                {
                    // установка куки
                    await _signInManager.SignInAsync(user, false);

                    return(RedirectToAction("Index", "Home"));
                }
                else
                {
                    foreach (var error in result.Errors)
                    {
                        ModelState.AddModelError(string.Empty, error.Description);
                    }
                }
            }
            return(View(model));
        }