Example #1
0
            //覆寫OnMessage事件,前端send時觸發,被觸發後會回頭觸發前端的onmessage事件
            public override void OnMessage(string message)
            {
                //將訊息的相關資訊製成Json檔後傳出
                _chatRooms[_roomKey].Broadcast(
                    JsonConvert.SerializeObject(new {
                    Message  = message,
                    Time     = DateTime.Now.ToString("MM/dd hh:mm"),
                    UserID   = _userID,
                    UserName = _userName
                })
                    );

                //將此訊息儲存至訊息列表
                Message m = new Message
                {
                    TeamID      = _teamID,
                    MessageDate = DateTime.Now,
                    Speaker     = _userID,
                    IsPrivate   = _isPrivate,
                    Content     = message.Length > 300 ? message.Substring(0, 300) : message
                };
                var db = new TGISDBEntities();

                db.Messages.Add(m);
                db.SaveChanges();
            }