public object Post(object modelParam) { try { var model = JsonConvert.DeserializeObject <QuizzmateMsgModel>(modelParam.ToString()); if (model == null) { return(null); } QuizzmateMsg1 entity = null; model.MapToNew(out entity); _uow.QuizzmateMsg1s.Add(entity); _uow.SaveChanges(); model = MappingUtil.Map <QuizzmateMsg1, QuizzmateMsgModel>(entity); return(model); } catch (Exception ex) { _svcContainer.LoggingSvc.Log(ex); return(null); } }
private void SaveQuizzmateMessage(int qmThreadId, int userId, string message) { try { var msgEntity = new QuizzmateMsg1 { Message = message, PostedDate = DateTime.UtcNow, QuizzmateMsgThreadId = qmThreadId, AuthorId = userId }; _uow.QuizzmateMsg1s.Add(msgEntity); var thread = _uow.QuizzmateMsgThreads.GetAll() .Where(qm => qm.Id == qmThreadId) .Include(qm => qm.MsgThreadMembers) .FirstOrDefault(); foreach (var item in thread.MsgThreadMembers) { if (item.UserId != userId) { SendLayoutMsg(item.UserId, LayoutHubNotificationTypeEnum.QuizzmateMsg, qmThreadId); var aqmThreadMember = activeQmThreadMembers .Where(q => q.UserId == item.UserId && q.QuizzmateMsgThreadId == qmThreadId) .FirstOrDefault(); if (aqmThreadMember == null) { item.HasNew = true; item.NewCount++; item.UpdatedDate = DateTime.UtcNow; _uow.QuizzmateMsgThreadMembers.Update(item); } } } _uow.SaveChanges(); } catch (Exception ex) { Log(ex); return; } }