示例#1
0
        private IRoomsQuery ConvertServerTalksToRoomsQuery(ITalksQuery talksQuery)
        {
            var talks             = talksQuery.TalkQueries.Select(o => o.Talk).ToList();
            var roomNamesOfTheDay = talks.Where(o => o.Date.Equals(_dateTalk) || o.IsDateUndefined).Select(o => o.Room).Distinct();
            var talksOfTheDay     = talks.Where(o => o.Date.Equals(_dateTalk) || o.IsDateUndefined);

            return(new RoomsQuery(roomNamesOfTheDay.Select(roomName => new Room(roomName, _dateTalk, talksOfTheDay.Where(o => o.Room.Equals(roomName)).OrderBy(o => o.Start).ToList())), talksQuery.Exceptions));
        }
示例#2
0
        public async Task <IRoomsQuery> LoadRoomsLightTalksAsync(DateTime dateTalk)
        {
            _dateTalk = dateTalk;

            if (_lightTalksQueryCache == null)
            {
                _lightTalksQueryCache = await _proxy.LoadLightTalksAsync();
            }

            return(ConvertServerTalksToRoomsQuery(_lightTalksQueryCache));
        }