public override async Task <GetBidResponse> GetBid(GetBidRequest request, ServerCallContext context)
        {
            Guid entryId;

            if (!Guid.TryParse(request.EntryId, out entryId))
            {
                throw new RpcException(new Status(StatusCode.InvalidArgument, "entryid is not a guid"));
            }
            var entry = await _auctionService.GetBid(entryId);

            if (entry == null)
            {
                return(new GetBidResponse());
            }

            var res = new GetBidResponse
            {
                Entry = new AuctionEntry
                {
                    Amount         = entry.Amount,
                    Description    = entry.Description,
                    Id             = entry.Id.ToString(),
                    Message        = entry.Message,
                    PaymentRequest = entry.PaymentRequest,
                    State          = (AuctionEntry.Types.State)((int)entry.State)
                }
            };

            return(res);
        }
        public static GetBidResponse Unmarshall(UnmarshallerContext context)
        {
            GetBidResponse getBidResponse = new GetBidResponse();

            getBidResponse.HttpResponse = context.HttpResponse;
            getBidResponse.RequestId    = context.StringValue("GetBid.RequestId");
            getBidResponse.Success      = context.BooleanValue("GetBid.Success");
            getBidResponse.Message      = context.StringValue("GetBid.Message");
            getBidResponse.Data         = context.StringValue("GetBid.Data");
            getBidResponse.ErrorCode    = context.IntegerValue("GetBid.ErrorCode");
            getBidResponse.ErrorMsg     = context.StringValue("GetBid.ErrorMsg");

            return(getBidResponse);
        }