Example #1
0
        public String ChatMessages([FromForm] int id)
        {
            List <ChatMessage> msgs = _cdb.GetChatMessages(id);

            List <ChatMessageModel> rm = new List <ChatMessageModel>();

            List <String> ids = msgs.Select(x => x.SenderId).Distinct().ToList();

            List <IdentityUser> users = _db.Users.Where(x => ids.Contains(x.Id)).ToList();

            msgs.ForEach(x =>
            {
                ChatMessageModel cmm = new ChatMessageModel();

                cmm.UserId      = x.SenderId;
                cmm.MessageText = x.MessageText;
                cmm.MessageTime = x.SentTime;
                //ToDo:
                cmm.UserEmail = users.Where(y => y.Id == x.SenderId).Single().Email;

                rm.Add(cmm);
            });

            //O(n)

            return("");
        }