コード例 #1
0
        private void ExecuteItemDoubleClickedCommand(Friend friend)
        {
            if (null != friend)
            {
                IList <string> arMembers = new List <string>()
                {
                    friend.Sid, AuthRepository.MQKeyInfo.UserSid
                };
                var RoomInfo = this.m_GetRoomInfoService.GetRoomInfo(arMembers);

                if (null != RoomInfo)
                {
                    var RoomCollection = ConnectionHelper.DB.GetCollection <RoomEntity>("RoomEntity");
                    var FindRoomQuery  = Query <RoomEntity> .EQ(r => r.Sid, RoomInfo.Sid);

                    var FindedRoom = RoomCollection.FindOne(FindRoomQuery);

                    if (null == FindedRoom)
                    {
                        RoomInfo.UserSid = AuthRepository.MQKeyInfo.UserSid;
                        RoomCollection.Save(RoomInfo);
                    }

                    var Parameters = new FriendDoubleClickParams(RoomInfo.Sid, RoomInfo.ActiveMemberSids, RoomInfo.UnReadMsgCount,
                                                                 RoomInfo.LastMsgSummary, RoomInfo.LastMsgDate, RoomInfo.ThumbnailPath);

                    this.m_EventAggregator.GetEvent <FriendDoubleClickedEvent>().Publish(Parameters);
                }
            }
        }
コード例 #2
0
 private void FriendDoubleClicked(FriendDoubleClickParams parameters)
 {
     this.AddRoom(parameters.Sid, parameters.Members, parameters.UnReadMsgCount, parameters.LastMsgSummary, parameters.LastMsgDate, parameters.ThumbnailPath);
     this.CreateChattingShellOrActivate(parameters.Sid);
 }