public void Post([FromBody] DeleteMessageData deleteMessageData) { for (int i = 0; i < Program.Admin.sessions.Count; i++) { if (Program.Admin.sessions[i].login == deleteMessageData.login) { Program.DeletedMessages.Add(deleteMessageData.messageID); Console.WriteLine($"Admin {deleteMessageData.login} delete message ID = {deleteMessageData.messageID}"); Message OldMessage = new Message(); OldMessage.username = Program.Messages.messages[deleteMessageData.messageID].username; OldMessage.text = Program.Messages.messages[deleteMessageData.messageID].text; OldMessage.token = Program.Messages.messages[deleteMessageData.messageID].token; OldMessage.time = Program.Messages.messages[deleteMessageData.messageID].time; Program.Messages.messages[deleteMessageData.messageID].username = "******"; Program.Messages.messages[deleteMessageData.messageID].text = "Сообщение было удалено администратором"; Program.Messages.messages[deleteMessageData.messageID].token = 0; string strAllMessages = System.IO.File.ReadAllText("SavedMessages.txt"); strAllMessages = strAllMessages.Replace(JsonConvert.SerializeObject(OldMessage).ToString(), JsonConvert.SerializeObject(Program.Messages.messages[deleteMessageData.messageID]).ToString()); System.IO.File.WriteAllText("SavedMessages.txt", strAllMessages); } } }
static void SendDeleteMessage(DeleteMessageData deleteMessageData) { WebRequest httpWebRequest = WebRequest.Create("http://localhost:5000/api/del"); httpWebRequest.Method = "POST"; httpWebRequest.ContentType = "application/json"; string postData = JsonConvert.SerializeObject(deleteMessageData); byte[] bytes = Encoding.UTF8.GetBytes(postData); httpWebRequest.ContentLength = bytes.Length; Stream reqStream = httpWebRequest.GetRequestStream(); reqStream.Write(bytes, 0, bytes.Length); reqStream.Close(); httpWebRequest.GetResponse(); }
private void btnSend_Click(object sender, EventArgs e) { if (fieldMessage.Text.Length < 1) { return; } if (fieldMessage.Text.Contains("/delete")) { int MessageID; int.TryParse(string.Join("", fieldMessage.Text.Where(c => char.IsDigit(c))), out MessageID); DeleteMessageData deleteMessageData = new DeleteMessageData(fieldUsername.Text, token, MessageID); SendDeleteMessage(deleteMessageData); fieldMessage.Clear(); } else { SendMessage(new Message(fieldUsername.Text, token, fieldMessage.Text)); fieldMessage.Clear(); } }