public async Task <object> GetConversation([FromBody] GetConversationViewModel getConversationViewModel) { try { bool result = true; string error = string.Empty; List <ConversationViewModel> listConversation = new List <ConversationViewModel>(); List <ConversationViewModel> listDecodedConversation = new List <ConversationViewModel>(); try { listConversation = _conversationRepository.GetConversation(getConversationViewModel.QuestionId); foreach (ConversationViewModel item in listConversation) { ConversationViewModel newItem = item; byte[] data = Convert.FromBase64String(item.Message); string decodedString = Encoding.UTF8.GetString(data); newItem.Message = decodedString; listDecodedConversation.Add(newItem); } } catch (Exception ex) { result = false; error = ex.Message; } return(new ListResponse <ConversationViewModel> { Message = error, DidError = !result, ErrorMessage = error, Token = string.Empty, Model = listDecodedConversation, }); } catch (Exception ex) { return(new ListResponse <ConversationViewModel> { Message = ex.Message, DidError = true, ErrorMessage = ex.InnerException.ToString(), Token = string.Empty, Model = new List <ConversationViewModel>() }); } }
public async Task <JsonResult> GetConversation(int questionId) { try { GetConversationViewModel getConversationViewModel = new GetConversationViewModel(); getConversationViewModel.QuestionId = questionId; string response = await APICallerExtensions.APICallAsync("Conversation/GetConversation", getConversationViewModel, false, HttpContext.Session.GetObject(StorageType.Token).ToString()); if (response.ToLower().Contains("exception:")) { ModelState.AddModelError(string.Empty, response); return(Json(new { isSuccessfull = false, errorMessage = response })); } var content = JsonConvert.DeserializeObject <ListResponse <ConversationViewModel> >(response); if (!content.DidError) { return(Json(new { isSuccessfull = true, listDecodedConversation = content.Model, })); } else { return(Json(new { isSuccessfull = false, errorMessage = content.Message })); } } catch (Exception ex) { return(Json(new { isSuccessfull = false, errorMessage = ex.Message })); } }