Beispiel #1
0
        public async Task<IActionResult> Create(CreatePostViewModel model)
        {
            //var errors = ModelState.Values.SelectMany(v => v.Errors);

            if (ModelState.IsValid)
            {
                Post post = new Post
                {
                    Title = model.Title,
                    Content = model.Content,
                    Permalink = model.Permalink,
                    Tags = model.Tags,
                    DateCreated = DateTime.UtcNow,
                    Author = _userManager.Users.FirstOrDefault(x => x.UserName == User.Identity.Name),
                    Blog = _context.Blogs.Where(x => x.Id == model.Blog).SingleOrDefault(),
                    PostStatus = _context.PostStatuses.Where(x => x.Id == model.PostStatus).SingleOrDefault()
                };
                

                _context.Posts.Add(post);
                await _context.SaveChangesAsync();
                return RedirectToAction("Index");
            }
            ViewBag.PostStatus = new SelectList(_context.PostStatuses, "Id", "Status");
            ViewBag.BlogId = new SelectList(_context.Blogs, "Id", "Name");
            return View(model);
        }
Beispiel #2
0
        public async Task<IActionResult> Edit(EditPostViewModel editPost)
        {
            if (ModelState.IsValid)
            {
                var currentuser = _userManager.Users.FirstOrDefault(x => x.UserName == User.Identity.Name);
                Post post = new Post {
                    PostId = editPost.PostId,
                    Title = editPost.Title,
                    Content = editPost.Content,
                    Permalink = editPost.Permalink,
                    DateCreated = editPost.DateCreated,
                    Tags = editPost.Tags,
                    Author = currentuser,
                    Blog = _context.Blogs.First(x=>x.Id == editPost.Blog),
                    PostStatus = _context.PostStatuses.First(x=>x.Id == editPost.PostStatus)
                };

                _context.Update(post);
                await _context.SaveChangesAsync();
                return RedirectToAction("Index");
            }
            ViewBag.PostStatus = new SelectList(_context.PostStatuses, "Id", "Status", editPost.PostStatus);
            ViewBag.BlogId = new SelectList(_context.Blogs, "Id", "Name", editPost.Blog);
            return View(editPost);
        }