Пример #1
0
        public async Task<IEnumerable<UserModel>> GetUserFriends(string userId)
        {
            using (var dbModel = new ChatEntities())
            {
                var friends = await dbModel.Users
                    .Include(u => u.Friends)
                    .Include(u => u.FriendFor)
                    .Where(u => u.Friends.Any(f => f.Id == userId) || u.FriendFor.Any(f => f.Id == userId))
                    .ToListAsync();

                var models = Mapper.Map<IEnumerable<UserModel>>(friends);
                return models;
            }
        }
Пример #2
0
        public async Task<UserModel> GetUser(string id)
        {
            using (var dbModel = new ChatEntities())
            {
                var user = await dbModel.Users
                    .Include(u => u.Friends)
                    .Include(u => u.FriendFor)
                    .FirstOrDefaultAsync(u => u.Id == id);

                var model = Mapper.Map<UserModel>(user);

                model.Friends = Mapper.Map<IEnumerable<UserModel>>(user.Friends)
                        .Concat(Mapper.Map<IEnumerable<UserModel>>(user.FriendFor)); 
                               
                return model;
            }
        }