none
As vezes salva o xml e as vezes não, RRS feed

  • Pergunta

  • Galera espero nao ter problemas em postar minha dúvida de windows forms' aqui, mas é pq acredito que em minha dúvida seja a mesma coisa em WEB.

    Tô usando o VS 2005, em windows forms, framework 2.0, e usando um arquivo xml, tô conseguindo fazer tudo, inclusive salvar e alterar o xml, exceto na minha tela de login onde quero salvar algumas variáveis após o login do usuário.

    mas o que acontece é que após o XmlDocument.Save("meuArquivo.xml"); as variáveis não estão sendo salvas, e em modo de depuração se eu deixar o cursor abaixo do método Save, eu verifico que arquivo xml e os valores são alterados, mas se eu tiro o modo debug e deixo em modo normal o arquivo  mxl não é alterado.

    Pra ter a certeza coloquei o método System.Diagnostics.Debug.Print("Variavel1 = " + minhaVar1); pra verificar os valores das variáveis em tempo de execução após o método save( ) e é mostrado o valor salvo corretamente, porém ao abrir o arquivo físico o mesmo não está sendo alterado.

    será que tô fazendo algo de errado, ou o framework 2.0 que tá dando pau ??

    Segue abaixo trecho de meu código !!! e lembrando que o código funciona em outros locais de minha aplicação.

    XmlDocument xmlDoc = new XmlDocument();
    xmlDoc.Load(Application.StartupPath + "\\ArquivoXml.xml");

    xmlDoc["Cliente"]["setSenha"].InnerText = Variaveis.config.setSenha;
    xmlDoc["
    Cliente"]["setIpRemoto"].InnerText = Variaveis.config.setIpRemoto;
    xmlDoc["
    Cliente"]["setSSenha"].InnerText = Variaveis.config.setSSenha.ToString();
    xmlDoc["
    Cliente"]["setSRamal"].InnerText = Variaveis.config.setSRamal.ToString();
    xmlDoc["
    Cliente"]["setSenhaIntervalo"].InnerText = Variaveis.config.setSenhaIntervalo.ToString();

    xmlDoc.Save(Application.StartupPath + "\\
    ArquivoXml.xml");
    segunda-feira, 8 de dezembro de 2008 12:52

Respostas

  • Ok Obrigado a todos, tentei diversas vezes e não consegui achar onde estava errado porém pude verificar o seguinte:

    Tenho duas função que utilizam o arquivo xml:
    a Primeira lê o arquivo e carregas algumas variáveis globais.
    a Segunda pega o conteúdo das variáveis globais e salva no xml

    o erro começou a acontecer depois que criei um novo xmlDocument para ler apenas 2 variaveis do arquivo e salvar.
    (para essas 2 variaveis do arquivo ainda não havia criado global no meu aplicativo)

    ou seja antes eu chamava assim:

    funçãoLêXml()
    funçãoSalvaXml()

    depois começei a chamar assim:

    funçãoLêXml()
    cria xmlDocument (Lê e Salva)
    funçãoSalvaXml()

    aí começou a dar esse pau de não salvar as anteriores, ou seja, foi um erro de lógica meu, mas na minha visão deveria salvar de qualquer maneira.

    Mas de fato, criei mais 2 variáveis globais, chamo como chamava anteriormente.

    Obrigado pela atenção de todos.
    quarta-feira, 10 de dezembro de 2008 12:58