示例#1
0
        public async Task <int> UpdateUser(User user)
        {
            var request = new PutModifyUserRequest()
            {
                User = user
            };

            var response = await PutAsync <ResponseWrapper <PutModifyUserResponse, UserServiceErrorCode> >("/api/putmodifyuser", request);

            if (response.HasContent && response.IsSuccessful)
            {
                return(response.Content.UserID);
            }
            else
            {
                throw new Exception($"Unsuccessful response from putmodifyuser.  Errors: { response.Errors}");
            }
        }
        public async Task <IActionResult> Run(
            [HttpTrigger(AuthorizationLevel.Function, "put", Route = null)]
            [RequestBodyType(typeof(PutModifyUserRequest), "Put Modify User")] PutModifyUserRequest req,
            ILogger log)
        {
            try
            {
                NewRelic.Api.Agent.NewRelic.SetTransactionName("UserService", "PutModifyUser");
                log.LogInformation("C# HTTP trigger function processed a request.");

                PutModifyUserResponse response = await _mediator.Send(req);

                return(new OkObjectResult(ResponseWrapper <PutModifyUserResponse, UserServiceErrorCode> .CreateSuccessfulResponse(response)));
            }
            catch (Exception exc)
            {
                LogError.Log(log, exc, req);

                return(new ObjectResult(ResponseWrapper <PutModifyUserResponse, UserServiceErrorCode> .CreateUnsuccessfulResponse(UserServiceErrorCode.UnhandledError, "Internal Error"))
                {
                    StatusCode = StatusCodes.Status500InternalServerError
                });
            }
        }