private async Task<Boolean> AddComment_task() { ChatComment comment = new ChatComment() { ChatRooms_ID= MainViewVM.ChatRoom.ID, Comment=this.ChatComment }; Response res = await ChatRoomRepository.PostChatComment(comment); if (res.Success == true) { int bobID=ChatRoom.ChatRoom.Bobs_ID; Bob.All bob = Task.FromResult<Bob.All>(await BobsRepository.GetBobById(bobID)).Result; int userID = ChatRoom.ChatRoom.Users_ID; Libraries.Socket socketSendToBob; Libraries.Socket socketSendToUser; if (MainViewVM.USER.IsBob==false) { socketSendToBob = new Libraries.Socket() { From = MainViewVM.USER.ID, To = bob.User.ID, Status = true, Object = comment.Comment, Object2 = true }; socketSendToUser = new Libraries.Socket() { From = bob.User.ID, To = ChatRoom.ChatRoom.Users_ID, Status = true, Object = comment.Comment, Object2=false }; } else { socketSendToBob = new Libraries.Socket() { From = MainViewVM.USER.ID, To = bob.User.ID, Status = true, Object = comment.Comment, Object2 = false }; socketSendToUser = new Libraries.Socket() { From = bob.User.ID, To = ChatRoom.ChatRoom.Users_ID, Status = true, Object = comment.Comment, Object2 = true }; } MainViewVM.socket.Emit("chatroom_COMMENT:send", JsonConvert.SerializeObject(socketSendToUser)); MainViewVM.socket.Emit("chatroom_COMMENT:send", JsonConvert.SerializeObject(socketSendToBob)); this.ChatComment = ""; RaiseAll(); } return res.Success; }
public static async Task<Response> PostChatComment(ChatComment chatComment) { try { using (HttpClient client = new HttpClient()) { client.BaseAddress = new Uri(URL.BASE); var newObject = JsonConvert.SerializeObject(chatComment); HttpResponseMessage result = await client.PostAsync(URL.CHATROOMS_COMMENT, new StringContent(newObject, Encoding.UTF8, "application/json")); string json = await result.Content.ReadAsStringAsync(); Response data = JsonConvert.DeserializeObject<Response>(json); return data; } } catch (JsonException jex) { return new Response() { Error = "Parse Error: " + jex.ToString(), Success = false }; } catch (Exception ex) { return new Response() { Error = ex.Message.ToString(), Success = false }; } }