public ActionResult SendMessage(SendMessageModel sendMessageModel) { if (ModelState.IsValid) { try { var message = _messageService.GetByCode(sendMessageModel.Code); Message result; if (message != null) { message.MessageBody = sendMessageModel.MessageBody; message.UpdatedDate = DateTime.UtcNow; result = _messageService.Update(message); } else { message = Mapper.Map<SendMessageModel, Message>(sendMessageModel); message.CreatedDate = DateTime.UtcNow; message.UpdatedDate = DateTime.UtcNow; result = _messageService.Create(message); } _messageService.SaveChanges(); var viewModel = Mapper.Map<Message, PageBViewModel>(result); return PartialView("PageBMessage", viewModel); } catch (Exception ex) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest, ex.Message); } } return new HttpStatusCodeResult(HttpStatusCode.BadRequest, "Validation Error"); }
public void SendToUser(string username,string conversationId,string iamId,string friendId, string message) { if (message != null || message != "") { User iam; var msg = new Message() { Text = message, Time = DateTime.Now, UserId = Convert.ToInt32(iamId), Ip = HttpContext.Current.Request.UserHostAddress, ConversationId = Convert.ToInt32(conversationId) }; using (DatabaseContext db = new DatabaseContext()) { iam = db.Users.Include("Profile").Where(u => u.Id.ToString() == iamId).FirstOrDefault(); db.Messages.Add(msg); db.SaveChanges(); } var msgToSend = new SendMessageModel() { AvatarPath=iam.Profile.AvatarPath, Text=message, Time=msg.Time, UserId=iam.Id , FullName=iam.FullName }; Clients.User(username).newMessage(msgToSend); } }