public async Task <Result <Models.Post> > Handle(UpdatePostRequest updatePostRequest, CancellationToken cancellationToken)
        {
            var postExists = await _dbContext.Posts.AnyAsync(p => p.Id == updatePostRequest.Post.Id, cancellationToken);

            if (!postExists)
            {
                return(Result.Fail <Models.Post>(new ResourceNotFoundError()));
            }

            var inPost = _mapper.Map <Post>(updatePostRequest.Post);

            try
            {
                var trackingState = _dbContext.Attach(inPost);
                trackingState.State = EntityState.Modified;
                await _dbContext.SaveChangesAsync(cancellationToken);
            }
            catch (DbUpdateConcurrencyException)
            {
                return(Result.Fail <Models.Post>(new ConcurrencyError()));
            }

            var outPost = _mapper.Map <Models.Post>(inPost);

            return(Result.Ok(outPost));
        }
示例#2
0
        public void UpdateModel(BlogWidget model)
        {
            _blogDbContext.Attach(model);
            _blogDbContext.Entry(model).State = Microsoft.EntityFrameworkCore.EntityState.Modified;

            _blogDbContext.SaveChanges();
        }
 public Article EdditArticle(Article article)
 {
     _context.Attach(article).State = EntityState.Modified;
     _context.SaveChanges();
     return(article);
 }
示例#4
0
 public Project EdditProject(Project Project)
 {
     _context.Attach(Project).State = EntityState.Modified;
     _context.SaveChanges();
     return(Project);
 }