public List<MessageModel> AddMessage(MessageModel message, string fileName) { var messages = Deserialize(fileName); MessageModel messageToRemove = null; if (messages.Count >= 20) { messageToRemove = messages.Aggregate((m1, m2) => m1.Date < m2.Date ? m1 : m2); } else if (messages.Count(m => m.Id == message.Id) >= 10) { messageToRemove = messages.Where(m => m.Id == message.Id).Aggregate((m1, m2) => m1.Date < m2.Date ? m1 : m2); } messages.Remove(messageToRemove); messages.Add(message); Serialize(messages, fileName); return messages; }
public ActionResult Send(MessageModel message) { message.Date = DateTime.Now; var allMessages = _xmlService.AddMessage(message, FileName).OrderByDescending(m => m.Date); return Json(allMessages); }