none
Erro de conversão para IEnumerable<Tuple<DateTime, int>>> RRS feed

  • Pergunta

  • Estou montando um retorno de meu repositório para o EndPoint, que o mesmo deve atribuir um retorno do tipo:

    Task<Dictionary<string, IEnumerable<Tuple<DateTime, int>>>> 

    A minha implementação feita no repositorio esta dessa forma

    		public  Task<Dictionary<string, IEnumerable<Tuple<DateTime, int>>>> GetUnavailableScheduleDates(int campaignId)
           
            {
                var query = this.PagoLivreContext.CampaignResults.OfType<InviteCampaignResult>()
                    .Where(r => r.CampaignAction.Campaign.CampaignId == campaignId)
                    .Where(r => r.TaggedUser.ScheduledDate >= DateTime.Now && r.TaggedUser.ScheduledDate != null && !string.IsNullOrEmpty(r.TaggedUser.Local))
                    .GroupBy(s => s.TaggedUser.Local);
                
                return query.ToDictionaryAsync(s => s.Key,
                    s => 
                    new Tuple<DateTime, int>(
                        s.Select(i => i.TaggedUser.ScheduledDate.Value), 
                        s.Select(i => i.TaggedUser).Count())
                    );
            }
    

    Porém ele chora por um erro de conversão, fala que não é suportado

    Alguém poderia dar uma luz ?

    quinta-feira, 6 de abril de 2017 18:25

Respostas

  • Quando você está fazendo s.Select ele está retornando o ScheduledDate de todos itens e não apenas um, sendo assim gera um IEnumerable<DateTime> ao invés de simplesmente DateTime. Por isto ele está reclamando do tipo incompatível.

    If you found this post helpful, please "Vote as Helpful". If it actually answered your question, remember to "Mark as Answer".

    Se achou este post útil, por favor clique em "Votar como útil". Se por acaso respondeu sua dúvida, lembre de "Marcar como Resposta".


    quinta-feira, 6 de abril de 2017 18:51