示例#1
0
        public async Task <Message> AddOrUpdateJob([HttpTrigger(AuthorizationLevel.Function, "put", Route = "Job")]
                                                   HttpRequest req,
                                                   ILogger logger,
                                                   CancellationToken ct)
        {
            string requestBody = null;

            try
            {
                requestBody = await new StreamReader(req.Body).ReadToEndAsync();
                var job = JsonConvert.DeserializeObject <Job>(requestBody);

                var jobDto = Mapping.Mapper.Map <Job, JobDto>(job);
                if (await jobRepo.AddOrUpdate(jobDto, ct))
                {
                    return(new Message(Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(job))));
                }
            }
            catch (Exception e)
            {
                logger.LogError(e, $"Unable to add or update job. Message: {requestBody}");
            }

            return(null);
        }