public async Task <IActionResult> Create(BlogViewModel blog) { if (ModelState.IsValid) { var blogForSave = _mapper.Map <BlogViewModel, Blog>(blog); var blogFromDb = _blogData.AddBlog(blogForSave); var fileExt = blog.Wallpaper.FileName.Split('.').Last(); string path = $"{Path.DirectorySeparatorChar}images{Path.DirectorySeparatorChar}" + $"blogWallpapers{Path.DirectorySeparatorChar}" + blogFromDb.Id + $".{fileExt}"; using (var fileStream = new FileStream(_env.WebRootPath + path, FileMode.Create)) { await blog.Wallpaper.CopyToAsync(fileStream); } blogFromDb.ImageUrl = "/images/blogWallpapers/" + blogFromDb.Id + $".{fileExt}"; blogFromDb.ReleaseTime = DateTime.Now; blogFromDb.ImageLocalUrl = _env.WebRootPath + path; blogFromDb.Author = await _userManager.GetUserAsync(User); _blogData.UpdateBlogs(blogFromDb); return(RedirectToAction("Index", "Profile")); } return(View()); }