none
Ler um elemento de um xml e salvar os dados em um array RRS feed

  • Pergunta

  • Tenho um arquivo xml onde um elemento pode vir com múltiplos valores,exemplo :

    <Erro>

       9999-descricao erro 1

       9999-descricao erro 2

    </Erro>

    E tenho que exibir esses erros para o usuário caso ocorram.


    Junior

    terça-feira, 11 de julho de 2017 14:33

Respostas

  • string stringComSeuXml = "xml que você precisa pegar os valores";
    
    XmlDocument xml = new XmlDocument();
    xml.LoadXml(stringComSeuXml);
    
    XmlNodeList node = xml.SelectNodes("//erro");
    foreach (XmlNode erroAtual in node)
    {
        string descricao = erroAtual ["descricaoErro"].InnerText;
        string codigo = erroAtual ["codigoErro"].InnerText;
    
        //Obs: descricaoErro e codigoErro foram names criados por mim, você precisa verificar qual os names que seu xml retorna.
    }
    
    

    Agora é só adicionar no array e exibir para o usuário.

    Espero ter ajudado.

    sexta-feira, 14 de julho de 2017 13:42

Todas as Respostas

  • Boa tarde, Junior_luiz.

    Tudo bem?

    Obrigado por usar o fórum MSDN.

    Essa seria uma questão de "Break Fix/Erro" ou "How to/Customização"?

    Atenciosamente,

    Filipe B de Castro

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    terça-feira, 11 de julho de 2017 16:52
    Moderador
  • string stringComSeuXml = "xml que você precisa pegar os valores";
    
    XmlDocument xml = new XmlDocument();
    xml.LoadXml(stringComSeuXml);
    
    XmlNodeList node = xml.SelectNodes("//erro");
    foreach (XmlNode erroAtual in node)
    {
        string descricao = erroAtual ["descricaoErro"].InnerText;
        string codigo = erroAtual ["codigoErro"].InnerText;
    
        //Obs: descricaoErro e codigoErro foram names criados por mim, você precisa verificar qual os names que seu xml retorna.
    }
    
    

    Agora é só adicionar no array e exibir para o usuário.

    Espero ter ajudado.

    sexta-feira, 14 de julho de 2017 13:42
  • Bom dia,

    Por falta de retorno essa thread está encerrada.

    Se necessário, favor abrir uma nova thread.

    Atenciosamente,

    Filipe B de Castro

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    sexta-feira, 14 de julho de 2017 13:47
    Moderador
  • Tainã obrigado por responder, mais fiz bem parecido com o que vc mandou, é que tenho que consumir um webservice do banco fiz assim, talvez tenha feito a forma mais complicada, mais deu certo :

    string[] parts = null;

    XmlNodeList nodelist = meuxml.GetElementsByTagName("descricaoErro");

    foreach (XmlNode nodeinc in nodelist)

    {

        string erro = nodeinc.InnerText.Trim();

        parts = Regex.Split(erro,"\r\n");

    }

    depois dou um for no parts e pego a substring para separar o codigo do erro com a descrição do erro.


    Junior

    sexta-feira, 14 de julho de 2017 14:08