none
Linq XML RRS feed

  • Pregunta

  • La forma de trabajar con LINQ y XML es la misma que para WP7?

    Estoy intentando hacer una aplicación y parece que cambia muchas cosas en los comandos en relación a WP7.

    gracias

    lunes, 6 de agosto de 2012 9:48

Respuestas

  • Hola Elbrinner, en principio Linq to XML es igual en ambas versiones, ¿te refieres a la parte de descargar el XML, que en Win8 usamos HttpClient y no WebClient? Es el unico cambio, una vez tienes el XML el camino debería ser el mismo, aquí tienes un ejemplo de como descargar un rss y procesarlo con LinQ:

    HttpClient httpClient = new HttpClient();
    httpClient.MaxResponseContentBufferSize = int.MaxValue;
    
    var response = await httpClient.GetAsync(url.ToString());
    
    string docString = await response.Content.ReadAsStringAsync();
    
    if (!string.IsNullOrEmpty(docString))
    {
        XDocument doc = XDocument.Parse(docString);
    
        return new ObservableCollection<RssItem>(doc.Descendants("item")
                        .Select(it => new RssItem()
                        {
                            Title = it.Element("title").Value,
                            Description = it.Element("description").Value,
                            Url = new Uri(it.Element("link").Value)
                        }).ToList());
    }
    return null;

    Espero que te sirva, un saludote!

    MCTS - .NET 4.0 Windows Applications
    MCTS - .NET 4.0 Data Access
    MCTS - .NET 4.0 Service Communication Applications
    MCPD - .NET 4.0 Windows Developer
    Visita mi Blog en Geeks.ms
    Sigueme en Twitter

    • Marcado como respuesta ElbrinnerMVP sábado, 18 de agosto de 2012 14:50
    sábado, 18 de agosto de 2012 9:29
    Moderador

Todas las respuestas

  • Hola Elbrinner, en principio Linq to XML es igual en ambas versiones, ¿te refieres a la parte de descargar el XML, que en Win8 usamos HttpClient y no WebClient? Es el unico cambio, una vez tienes el XML el camino debería ser el mismo, aquí tienes un ejemplo de como descargar un rss y procesarlo con LinQ:

    HttpClient httpClient = new HttpClient();
    httpClient.MaxResponseContentBufferSize = int.MaxValue;
    
    var response = await httpClient.GetAsync(url.ToString());
    
    string docString = await response.Content.ReadAsStringAsync();
    
    if (!string.IsNullOrEmpty(docString))
    {
        XDocument doc = XDocument.Parse(docString);
    
        return new ObservableCollection<RssItem>(doc.Descendants("item")
                        .Select(it => new RssItem()
                        {
                            Title = it.Element("title").Value,
                            Description = it.Element("description").Value,
                            Url = new Uri(it.Element("link").Value)
                        }).ToList());
    }
    return null;

    Espero que te sirva, un saludote!

    MCTS - .NET 4.0 Windows Applications
    MCTS - .NET 4.0 Data Access
    MCTS - .NET 4.0 Service Communication Applications
    MCPD - .NET 4.0 Windows Developer
    Visita mi Blog en Geeks.ms
    Sigueme en Twitter

    • Marcado como respuesta ElbrinnerMVP sábado, 18 de agosto de 2012 14:50
    sábado, 18 de agosto de 2012 9:29
    Moderador
  • Gracias, el problema era con httpClient.

    Ya me funciona, se puede configurar para mostrar la aplicación en pantalla completa independentemente de la resolución con Silverlight? Estoy probando con un monitor fullhd y la aplicación pierde bastante.

    un saludo


    Elbrinner

    sábado, 18 de agosto de 2012 14:55