Esempio n. 1
0
        public object Get(GetPlayerIndex request)
        {
            var user  = request.UserId == null ? null : _userManager.GetUserById(request.UserId);
            var query = new InternalItemsQuery(user)
            {
                IncludeItemTypes = new[] { typeof(Game).Name },
                DtoOptions       = new DtoOptions(false)
                {
                    EnableImages = false
                }
            };
            var games = _libraryManager.GetItemList(query)
                        .Cast <Game>()
                        .ToList();

            var lookup = games
                         .ToLookup(i => i.PlayersSupported ?? -1)
                         .OrderBy(i => i.Key)
                         .Select(i => new ItemIndex
            {
                ItemCount = i.Count(),
                Name      = i.Key == -1 ? string.Empty : i.Key.ToString(UsCulture)
            })
                         .ToList();

            return(ToOptimizedSerializedResultUsingCache(lookup));
        }
Esempio n. 2
0
        public object Get(GetPlayerIndex request)
        {
            var games = GetAllLibraryItems(request.UserId, _userManager, _libraryManager, null, i => i is Game)
                        .Cast <Game>();

            var lookup = games
                         .ToLookup(i => i.PlayersSupported ?? -1)
                         .OrderBy(i => i.Key)
                         .Select(i => new ItemIndex
            {
                ItemCount = i.Count(),
                Name      = i.Key == -1 ? string.Empty : i.Key.ToString(UsCulture)
            })
                         .ToList();

            return(ToOptimizedSerializedResultUsingCache(lookup));
        }