How to do a replace in XML C #

0

I have a method that receives some parameters, I would like to replace some xml information, at the moment I can only remove and add new information

   private void CriacaoDoConfirmarLogin(string CaminhoArquivoParaLeitura, string NomeCaminhoParaArquivoSaida, string Desafio)
        {
            //remove o conteudo do corpo do arquivo de retorno do webservice
            //para que eu possa utilizar para enviar outros metodos
            string CaminhoCompletoArquivoConfirmacao = CaminhoArquivoParaLeitura;
            XmlDocument doc = new XmlDocument();
            doc.Load(CaminhoCompletoArquivoConfirmacao);
            var todosOsNos = doc.SelectNodes("//*");
            for (int i = 0; i < todosOsNos.Count; i++)
            {
                var element = todosOsNos[i];

                if(element.Name == "ServiceId")
                {
                    element.InnerText.Replace("SolicitaLogon", "ConfirmaLogon");
                }

                if (element.Name == "MsgDesc")
                {
                    element.InnerText.Replace("Solicitação do Desafio de Logon", "Confirmação do Desafio de Login");
                }


                if (element.Name == "Resposta")
                {
                    // pega o parent node
                    XmlNode parent = element.ParentNode;
                    // remove o node
                    parent.RemoveChild(element);

                    //adiciona o node de desafio
                    XmlElement desafioElemento = doc.CreateElement("DesafioAssinado");
                    desafioElemento.InnerText = Desafio;
                    parent.AppendChild(desafioElemento);

                    // grava a saida do arquivo
                    string newXML = doc.OuterXml;
                    doc.Save(NomeCaminhoParaArquivoSaida);
                }

            }

         }
    
asked by anonymous 19.06.2018 / 21:55

1 answer

0

Where did you write

element.InnerText.Replace("SolicitaLogon", "ConfirmaLogon");

type

element.InnerText = element.InnerText.Replace("SolicitaLogon", "ConfirmaLogon");
    
21.06.2018 / 01:27