示例#1
0
        /// <summary>
        /// Updates the user.
        /// </summary>
        /// <param name="details">The details.</param>
        /// <param name="request">The request.</param>
        /// <returns></returns>
        public async Task <APIResponse> UpdateUser(UserIdDetails details, UpdateUserRequest request)
        {
            try
            {
                var client = httpClientFactory.CreateClient(IdentityServiceOperation.serviceName);

                var         param       = JsonConvert.SerializeObject(request);
                HttpContent contentPost = new StringContent(param, Encoding.UTF8, "application/json");

                var response = await client.PutAsync(servicesConfig.Identity + IdentityServiceOperation.UpdateUser(details.UserId), contentPost);

                if (response.StatusCode == HttpStatusCode.NoContent)
                {
                    var user = new User {
                        Id = details.UserId, FirstName = request.FirstName, LastName = request.LastName
                    };
                    usernameUpdateSender.SendUserName(user);
                }

                return(JsonConvert.DeserializeObject <APIResponse>(await response.Content.ReadAsStringAsync()));
            }
            catch (Exception ex)
            {
                logger.Error(ex, "Exception in method 'UpdateUser()'");
                var exMessage = ex.InnerException != null ? ex.InnerException.Message : ex.Message;
                return(new APIResponse(exMessage, HttpStatusCode.InternalServerError));
            }
        }
示例#2
0
        /// <summary>
        /// Gets the user.
        /// </summary>
        /// <param name="details">The details.</param>
        /// <returns></returns>
        public async Task <APIResponse> GetUser(UserIdDetails details)
        {
            try
            {
                var client   = httpClientFactory.CreateClient(IdentityServiceOperation.serviceName);
                var response = await client.GetAsync(servicesConfig.Identity + IdentityServiceOperation.GetUser(details.UserId));

                return(JsonConvert.DeserializeObject <APIResponse>(await response.Content.ReadAsStringAsync()));
            }
            catch (Exception ex)
            {
                logger.Error(ex, "Exception in method 'GetUser()'");
                var exMessage = ex.InnerException != null ? ex.InnerException.Message : ex.Message;
                return(new APIResponse(exMessage, HttpStatusCode.InternalServerError));
            }
        }