public GetPostByIdResponse GetPostById(GetPostByIdRequest request) { using (var db = new DotWEntities()) { var response = new GetPostByIdResponse(); response.Post = db.Posts.Select(x => new Post { Id = x.Id, Title = x.Title, Summary = x.Summary, Body = x.Body, EffectDate = x.EffectDate, NullDate = x.NullDate, IdWriter = x.IdWriter, WriterUserName = x.Users.Name, IdCategory = x.IdCategory, CategoryTitle = x.Categories.Title, IsDraft = x.IsDraft, PrincipalImageName = x.PrincipalImageName, Tags = db.Tags.Where(t => t.PostId == x.Id).Select(t => t.Tag).ToList() }).FirstOrDefault(x => x.Id == request.Id); return(response); } }
public override Task <GetPostByIdResponse> GetPostById(GetPostByIdRequest request, ServerCallContext context) { try { var post = new PostComment.Post(); var returnValue = post.GetPostById(request.Id); var response = new GetPostByIdResponse { Value = (Post)returnValue }; return(Task.FromResult(response)); } catch (Exception ex) { _logger.LogError(ex, "Error invoking GetPostById"); throw new RpcException(new Status(StatusCode.Internal, ex.Message)); } }
public override Task <GetPostByIdResponse> GetPostById(GetPostByIdRequest request, ServerCallContext context) { GetPostByIdResponse output = new GetPostByIdResponse(); Post post = _context.Posts.Find(request.Id); if (post != null) { output.Id = request.Id; output.Description = post.Description; output.Domain = post.Domain; output.Date = post.Date.ToString(); } else { output.Id = request.Id; output.Description = null; output.Domain = null; output.Date = null; } return(Task.FromResult(output)); }
public async Task <IActionResult> GetPostById([FromRoute] Guid id) { GetPostByIdResponse response = await mediator.Send(new GetPostByIdRequest(id)); return(Ok(response)); }