Ejemplo n.º 1
0
        public async Task <Chat_MemberInfo> AddMembers(Chat_AddMembers add)
        {
            List <string> members = new List <string>();

            members = add.Members;
            foreach (var member in members)
            {
                var filter = Builders <User> .Filter.Eq(x => x.uID, add.uID);

                var update = Builders <User> .Update.AddToSet(x => x.Chatrooms, add.chatroomID);

                _users.UpdateOne(filter, update);
            }

            Chatroom chat = new Chatroom();

            chat = _chatrooms.Find <Chatroom>(x => x.chatroomID == add.chatroomID).FirstOrDefault();
            var filter_chat = Builders <Chatroom> .Filter.Eq(x => x.chatroomID, add.chatroomID);

            var update_chat = Builders <Chatroom> .Update.AddToSet(x => x.Participants, add.uID);

            var status = await _chatrooms.UpdateOneAsync(filter_chat, update_chat);


            Chat_MemberInfo info = new Chat_MemberInfo();

            info = GetMembersInfo_Single(add.chatroomID);
            return(info);
        }
Ejemplo n.º 2
0
        public async Task <ActionResult <Chatroom> > AddMember([FromBody] Chat_AddMembers add)
        {
            Chat_MemberInfo chatroom = new Chat_MemberInfo();

            Task <Chat_MemberInfo> task = _ChatService.AddMembers(add);

            chatroom = await task;

            if (chatroom == null)
            {
                return(BadRequest());
            }
            return(Ok(chatroom));
        }