Esempio n. 1
0
        public int?SavePost(SavePostDto postDto)
        {
            return(UnitOfWork.Do(uow =>
            {
                if (postDto.Id == 0)
                {
                    var post = new Post()
                    {
                        Title = postDto.Title,
                        Text = postDto.Text,
                        Created = DateTime.Now,
                        AuthorId = uow.Repo <User>().AsQueryable().First(t => t.Id == postDto.AuthodId).Id
                    };

                    var found = uow.Repo <Post>().AsQueryable().FirstOrDefault(t => t.Title == postDto.Title);
                    if (found == null)
                    {
                        return (int)uow.Repo <Post>().Insert <decimal>(post);
                    }
                }
                else
                {
                    var found = uow.Repo <Post>().AsQueryable().FirstOrDefault(t => t.Id == postDto.Id);
                    if (found != null)
                    {
                        found.Title = postDto.Title;
                        found.Text = postDto.Text;
                        found.AuthorId = uow.Repo <User>().AsQueryable().First(t => t.Id == postDto.AuthodId).Id;
                        uow.Repo <Post>().Update(found);
                        return found.Id;
                    }
                }
                return (int?)null;
            }));
        }
Esempio n. 2
0
        public ActionResult Edit(int id)
        {
            var post          = BlogService.GetPost(id);
            var editedPostDto = new SavePostDto()
            {
                Id       = post.Id,
                Title    = post.Title,
                Text     = post.Text,
                AuthodId = CurrentUser.Id
            };

            return(View(editedPostDto));
        }
Esempio n. 3
0
 public ActionResult Save(SavePostDto editedPostDto)
 {
     editedPostDto.AuthodId = CurrentUser.Id;
     BlogService.SavePost(editedPostDto);
     return(View("Edit", editedPostDto));
 }