none
¿Como obtener texto contenido dentro de etiqueta xml? RRS feed

  • Pergunta

  • Hola...

    Tengo una cadena (string) con formato XML  y dentro de ella una unica  etiqueta <Error> </Error> .

    Como puedo obtener el texto contenido dentro de dicha etiqueta ??


    EFRAIN MEJIAS C VALENCIA - VENEZUELA

    quarta-feira, 19 de fevereiro de 2020 18:10

Respostas

  • hola efrain

    utiliza Xdocument

    XDocument doc = XDocument.Parse("<Error>ValorTAG</Error>");
                  string[] ErroresStr = doc.Descendants("Error").Select(n => n.Value).ToArray();

    si es un string definido 

    var stringError = <Error>ValorTAG</Error>
    XDocument doc = XDocument.Parse(stringError);
                  string[] ErroresStr = doc.Descendants("Error").Select(n => n.Value).ToArray();




    quarta-feira, 19 de fevereiro de 2020 18:34

Todas as Respostas

  • hola efrain

    utiliza Xdocument

    XDocument doc = XDocument.Parse("<Error>ValorTAG</Error>");
                  string[] ErroresStr = doc.Descendants("Error").Select(n => n.Value).ToArray();

    si es un string definido 

    var stringError = <Error>ValorTAG</Error>
    XDocument doc = XDocument.Parse(stringError);
                  string[] ErroresStr = doc.Descendants("Error").Select(n => n.Value).ToArray();




    quarta-feira, 19 de fevereiro de 2020 18:34
  • HOla y Gracias   greg_dorian

    Pruebo y te comento


    EFRAIN MEJIAS C VALENCIA - VENEZUELA

    quarta-feira, 19 de fevereiro de 2020 18:37
  • Te mando una pequeña extracción de un código que utilizo para obtener datos de un Web Servicie, el cual me devuelve una cadena con formato XML.


        XmlNode xmlConsulta = new IndicadoresSoapClient().obtieneValoresHistoricos(
                        Clave, "",
                        (detalleAnual != null ? detalleAnual.Ano.ToString() : "2004"),
                        FechaActual.Year.ToString());
        string Valor = "";

          foreach (XmlNode Nodo in xmlConsulta.ChildNodes)
                    {
                        if (Nodo.Name == "inegi:DataSet")
                        {
                            foreach (XmlNode NodoHijo in Nodo.ChildNodes)
                            {
                                if (NodoHijo.Name == "inegi:Series")
                                {
    Valor = NodoHijo.Attributes[0].Value.Substring(0, 4);

                                }
                            }
        }
    }

    La primera linea es donde consumo el web service y el resultado lo asingno a una variable XmlNode, depues empiezo a navegar dentro de los nodos del XML. Espero te sirva de ayuda, por que no tengo actualmente como compilarlo en la computadora. Pero te puede dar una idea.

    quarta-feira, 19 de fevereiro de 2020 19:03
  • hola

    La complejidad depende de la estructura dle xml, solo mecnionas un nodo, pero hayq ue ver dentro de que otros nodos se encuentra

    Si recomendaria aprendas linq to xml

    Información general de LINQ to XML (C#)

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    quarta-feira, 19 de fevereiro de 2020 20:22