Usuário com melhor resposta
WebClient extendo em app windows phone

Pergunta
-
Olá pessoal,
estou desenvolvendo um leitor de rss que consome o xml do seguinte site: http://jovemnerd.com.br/categoria/nerdcast/feed/ até então está tudo tranquilo, consigo ler as notícias e tal, porém pelo fato do conteúdo disponibilizado no xml ser muito extenso, o aplicativo demora um pouco mais de um minuto para exibir as informações (o que não é muito bom para o usuário). O código que estou utilizando é este:
WebClient nerdcastfeed = new WebClient(); nerdcastfeed.DownloadStringCompleted += nerdcastfeed_DownloadStringCompleted; Uri uri = new Uri("http://jovemnerd.com.br/categoria/nerdcast/feed/rss"); nerdcastfeed.DownloadStringAsync(uri);
estou procurando uma forma de agrupar os itens desse xml para que sejam exibidos em uma lista de tamanho 10, enfim fico no aguardo e desde já agradeço a atenção.
domingo, 15 de fevereiro de 2015 05:00
Respostas
-
Jorge, aí infelizmente não tem jeito. Qualquer tentativa de leitura só será possível se vc baixar todo o arquivo.
Como sugestão, vc não pode criar um Web Service que faz a leitura desse XML e devolve apenas parte dele, conforme as necessidades da aplicação? Acredito que assim vc deixaria de ter esse problema num dispositivo móvel, deixando a cargo do serviço hospedado num servidor (IIS, por exemplo) todo esse trabalho de recuperação dos dados e, eventualmente, até de cache seguindo suas necessidades.
Como disse é uma sugestão. Se optar por este caminho, recomendo o uso de Web API. No link abaixo tem um post que escrevi a respeito desta tecnologia:
http://www.devmedia.com.br/asp-net-web-api-implementando-servicos-restful/31024
- Marcado como Resposta Jorge Kleber terça-feira, 17 de fevereiro de 2015 12:46
terça-feira, 17 de fevereiro de 2015 01:22
Todas as Respostas
-
Jorge,
Uma sugestão que te dou é utilizar as classes Task e Parallel para o download e leitura do RSS de forma assíncrona, além de efetuar o processamento paralelo disto.
Eu escrevi um post a respeito disto recentemente. Embora a aplicação no exemplo seja baseada no uso de WPF, acredito que a solução encontrada também é válida para Windows Phone:
Espero ter ajudado.
Abs.
domingo, 15 de fevereiro de 2015 14:44 -
Blz Renato vou verificar.segunda-feira, 16 de fevereiro de 2015 18:58
-
Olá Renato,
Poxa cara usando o método assíncrono ainda não conseguir fazer a divisão do arquivo, o que quero fazer é o seguinte: como o xml é muito pesado (nele estão todos os 460 podcasts), gostaria de recuperar somente uma parte do arquivo, ou seja, quero fazer o download de somente 10 itens que estão no arquivo xml, porém usando o DownloadStringAsync(uri) sempre vou baixar todo o arquivo (com seus 460 itens).
terça-feira, 17 de fevereiro de 2015 00:48 -
Jorge, aí infelizmente não tem jeito. Qualquer tentativa de leitura só será possível se vc baixar todo o arquivo.
Como sugestão, vc não pode criar um Web Service que faz a leitura desse XML e devolve apenas parte dele, conforme as necessidades da aplicação? Acredito que assim vc deixaria de ter esse problema num dispositivo móvel, deixando a cargo do serviço hospedado num servidor (IIS, por exemplo) todo esse trabalho de recuperação dos dados e, eventualmente, até de cache seguindo suas necessidades.
Como disse é uma sugestão. Se optar por este caminho, recomendo o uso de Web API. No link abaixo tem um post que escrevi a respeito desta tecnologia:
http://www.devmedia.com.br/asp-net-web-api-implementando-servicos-restful/31024
- Marcado como Resposta Jorge Kleber terça-feira, 17 de fevereiro de 2015 12:46
terça-feira, 17 de fevereiro de 2015 01:22