public static Auction Translate(GetAuctionRequest model) => model != null?Auction.Create( userId : model.UserId, name : model.Name, initialValue : model.InitialValue, used : model.Used, startDate : model.StartDate, endDate : model.EndDate ) : Auction.Create();
public override async Task <GetAuctionResponse> GetAuction(GetAuctionRequest request, ServerCallContext context) { Models.Auction auction; if (request.AuctionId == "active") { auction = await _auctionService.GetActiveAuction(); if (auction == null) { throw new RpcException(new Status(StatusCode.NotFound, "no active auction running")); } } else { Guid auctionId; if (!Guid.TryParse(request.AuctionId, out auctionId)) { throw new RpcException(new Status(StatusCode.InvalidArgument, "entryid is not a guid")); } auction = _auctionService.GetAuction(auctionId); } if (auction == null) { throw new RpcException(new Status(StatusCode.NotFound, "auction not found")); } var res = new GetAuctionResponse { Auction = new Auction { Id = auction.Id.ToString(), StartedAt = auction.StartedAt, Duration = auction.Duration, FinishedAt = auction.FinishedAt, } }; return(res); }