Pergunta

Eu tenho um Xelement e preciso adicionar mais elementos a ele de uma string. A sequência contém vários elementos XML que eu preciso analisar. Eu tentei o xdocument.load e o xelement.parse, mas recebo erros. O conteúdo do arquivo é o seguinte:

<menu id="a">
  <menuItem keyID="0">
    <command>test</command>
  </menuItem>
  <menuItem keyID="0">
    <command>test</command>
  </menuItem>     
</menu>
<menu id="b">
  <menuItem keyID="0">
    <command>test</command>
  </menuItem>
  <menuItem keyID="0">
    <command>test</command>
  </menuItem>     
</menu>    
<ecs>
  <areas>
    <area longitudeFrom="20.35" longitudeTo="20.37" />
    <area longitudeFrom="20.44" longitudeTo="20.46" />
    <area longitudeFrom="20.22" longitudeTo="20.25" />
  </areas>
</ecs>

Qual é a melhor maneira de ler todos os elementos dessa string e adicioná -los a um Xelement existente?

Foi útil?

Solução

Se este é o arquivo inteiro, é normal XMLDocument.Load para lhe dar erros. Para que um XML seja carregado, ele deve ter uma raiz assim. Se o erro estiver em outra coisa, poste a mensagem de erro

<root>
    <menu id="a">
      <menuItem keyID="0">
        <command>test</command>
      </menuItem>
      <menuItem keyID="0">
        <command>test</command>
      </menuItem>     
    </menu>
    <menu id="b">
      <menuItem keyID="0">
        <command>test</command>
      </menuItem>
      <menuItem keyID="0">
        <command>test</command>
      </menuItem>     
    </menu>    
    <ecs>
      <areas>
        <area longitudeFrom="20.35" longitudeTo="20.37" />
        <area longitudeFrom="20.44" longitudeTo="20.46" />
        <area longitudeFrom="20.22" longitudeTo="20.25" />
      </areas>
    </ecs>
</root>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top