Ejemplo n.º 1
0
        // Отправка сообщений

        public void Send(string name, string message, string partnerId, string toUserName)
        {
            MessageStoreViewModel messageStoreViewModel = new MessageStoreViewModel();
            string reqId = Context.User.Identity.GetUserId();

            Clients.Client(partnerId).addMessage(name, message, partnerId);
            Clients.Client(Context.ConnectionId).addMessage(name, message);

            messageStoreViewModel.UserFromId  = db.Users.Where(x => x.Id == reqId).FirstOrDefault().Id;
            messageStoreViewModel.UserToId    = db.Users.Where(x => x.UserName == toUserName).FirstOrDefault().Id;
            messageStoreViewModel.Description = message;
            messageStoreViewModel.DateSend    = DateTime.Now;

            db.Messages.Add(messageStoreViewModel);
            db.SaveChanges();
            SendMessage("Новое сообщение...", partnerId);
        }
Ejemplo n.º 2
0
        public async Task <ActionResult> AddMessage([Bind(Include = "Id,Description,DateSend,UserFromId,UserToId")] MessageStoreViewModel message)
        {
            if (ModelState.IsValid)
            {
                /*
                 * if (message.UserDialogId == null)
                 * {
                 *  UserDialog dialog = new UserDialog();
                 *  dialog.UserFromId = message.UserFromId;
                 *  dialog.UserToId = message.UserToId;
                 *  db.Dialogs.Add(dialog);
                 *  db.SaveChanges();
                 * // message.UserDialogId = dialog.Id;
                 * } */
                message.DateSend = DateTime.Now;
                db.Messages.Add(message);
                await db.SaveChangesAsync();

                return(RedirectToAction("Index", "Chat", new { userToId = message.UserToId }));
            }

            return(View(message));
        }