LER ELEMENTO XML COM MÊLTIPLAS LINHAS
Tem um arquivo XML que é retornado de um webservice que o elemento que pode vir com várias linhas, não sei como pegar o valor de cada linha, ele pega apenas um juntando todas as linhas.
O arquivo XML
<Erro>
9999-erro 1
9999-erro 2
9999-erro 3
</Erro>
O arquivo XML
<Erro>
9999-erro 1
9999-erro 2
9999-erro 3
</Erro>
tem, só é vc Serializar o XML com uma Lista de Strings
Acho que neste formato, o xml não sabe que são varias linhas de dados, e sim uma único nó/elemento que contem um texto.
Deve ser feito split entre as linhas através do carácter (CRLF, CR ou LF), dependendo de quem está escrevendo.
Deve ser feito split entre as linhas através do carácter (CRLF, CR ou LF), dependendo de quem está escrevendo.
Vc teria algum exemplo de como fazer essa serialização ?
1 - Bom, clica com o direito em References, Nuget Package
2 - procure e instale o newtonsoft.json
3 - adicione na classe que vai serializar a referencia
using newtonsoft;
depois
List<String> erros = new List<String>();
erros.Add([Ô]teste[Ô]);
var teste = JsonConvert.Serialize<List<string>>(erros);
ai vc envia o objeto teste pela webservice.
2 - procure e instale o newtonsoft.json
3 - adicione na classe que vai serializar a referencia
using newtonsoft;
depois
List<String> erros = new List<String>();
erros.Add([Ô]teste[Ô]);
var teste = JsonConvert.Serialize<List<string>>(erros);
ai vc envia o objeto teste pela webservice.
Cleverton, na realidade estou consumindo um webservice estou lendo o arquivo retorno dele.
Fiz como vc falou
List<string> Erros = new List<string>();
XmlNodeList nodelistinclusao = RetornoInclusaotitulo.GetElementsByTagName([Ô]descricaoErro[Ô]);
foreach (XmlNode nodeinc in nodelistinclusao)
{
Erros.Add(nodeinc.InnerText);
}
var listaerros = JsonConvert.SerializeObject(Erros);
Sendo que ele me tras o resultado assim :
[[Ô]
9999-erro 1
9999-erro 2
[Ô]]
Fiz como vc falou
List<string> Erros = new List<string>();
XmlNodeList nodelistinclusao = RetornoInclusaotitulo.GetElementsByTagName([Ô]descricaoErro[Ô]);
foreach (XmlNode nodeinc in nodelistinclusao)
{
Erros.Add(nodeinc.InnerText);
}
var listaerros = JsonConvert.SerializeObject(Erros);
Sendo que ele me tras o resultado assim :
[[Ô]
9999-erro 1
9999-erro 2
[Ô]]
Olha, se a pessoa que fez a webservice não foi vc.
vc vai DeSerializar;
e me parece que é um string com quebras de linha,
basta vc fazer um Split na quebra de linhas
vc vai DeSerializar;
e me parece que é um string com quebras de linha,
basta vc fazer um Split na quebra de linhas
não foi isso que eu disse?
Citação::
Olha, se a pessoa que fez a webservice não foi vc.
vc vai DeSerializar;
e me parece que é um string com quebras de linha,
basta vc fazer um Split na quebra de linhas
kkkkkkkkkkkkkkkkkkkkkkkkkkkk
verdade cara, nem li sua resposta pra ser sincero.
verdade cara, nem li sua resposta pra ser sincero.
Citação::
kkkkkkkkkkkkkkkkkkkkkkkkkkkk
verdade cara, nem li sua resposta pra ser sincero.
kkkk Relex kkkk
Resolvi de outra forma, talvez tenha feito do modo mais difÃcil, mais funcionou.
Criei um array de string
peguei os dados do elemento e deu um trim e um split, e gravo no array, depois percorro o array pegando o código do erro e a mensagem.
Criei um array de string
peguei os dados do elemento e deu um trim e um split, e gravo no array, depois percorro o array pegando o código do erro e a mensagem.
Tópico encerrado , respostas não são mais permitidas