Пример #1
0
        /// <summary>
        /// 添加回复
        /// </summary>
        /// <param name="postsId"></param>
        /// <param name="contents"></param>
        /// <returns></returns>
        public bool AddAnswer(int postsId, string contents, string title)
        {
            bool result = false;

            if (!string.IsNullOrEmpty(contents))
            {
                PostsRepository repository = new PostsRepository();
                //
                Entity.m_PostsAnswer model = new Entity.m_PostsAnswer();
                model.CommentsCount = 0;
                model.Contents      = contents;
                model.IsShow        = true;
                model.Plus          = 0;
                model.PostDate      = DateTime.Now;
                model.PostsId       = postsId;
                model.UserId        = Framework.Core.Transform.GetInt(HttpContext.Session.GetString("UserId"), 0);
                //消息实体
                Entity.m_Message message = new Entity.m_Message();
                message.AppendUserId = model.UserId;
                message.Contents     = Common.MessageHtml.GetMessageContent(HttpContext.Session.GetString("NickName"), postsId, title, 10);
                message.IsRead       = false;
                message.MessageType  = 10;
                message.ObjId        = postsId;
                message.PostDate     = DateTime.Now;
                message.UserId       = repository.GetPostsByUserId(postsId);
                //保存
                result = repository.AddAnswer(model, message);
                if (result)
                {
                    Extensions.SignalRCore.PushUserMessage(message.UserId.ToString(), _messageHubContext);
                }
            }
            return(result);
        }
Пример #2
0
 public bool AddAnswer(Entity.m_PostsAnswer model, Entity.m_Message message)
 {
     using (var tran = _dbContext.Database.BeginTransaction())
     {
         try
         {
             _dbContext.Add(model);
             _dbContext.SaveChanges();
             //添加通知信息
             _dbContext.Add(message);
             _dbContext.SaveChanges();
             //更新回答数量
             _dbContext.MangoUpdate <Entity.m_Posts>(m => m.AnswerCount == m.AnswerCount + 1, m => m.PostsId == model.PostsId);
             tran.Commit();
             return(true);
         }
         catch
         {
             tran.Rollback();
             return(false);
         }
     }
 }