EXCEPTION DESEREALIZAR XML NFE.

MESTRE 21/11/2017 11:43:36
#478027
Citação:

:
Tenta a clase do Kerplunk

http://www.vbmania.com.br/index.php?modulo=forum&metodo=abrir&id=477763&pagina=1



Realmente não adianta..

Citação:

:
:
Tenta a clase do Kerplunk

http://www.vbmania.com.br/index.php?modulo=forum&metodo=abrir&id=477763&pagina=1
Não vai adiantar, o XML está mal formado. Certeza que não foi serializado.



Então o pior é que é um xml validado importado no Contimatic.. o que posso fazer pra sair dessa sinuca de bico ?
CLEVERTON 21/11/2017 12:09:43
#478028
Então, se vc estiver tentando fazer o download da NFE.
Está tendo um problema ao baixar, e algumas vezes só vem o resumo da NF.

seria interessante testar o Tipo da classe.
MESTRE 21/11/2017 15:24:33
#478029
Citação:

:
Então, se vc estiver tentando fazer o download da NFE.
Está tendo um problema ao baixar, e algumas vezes só vem o resumo da NF.

seria interessante testar o Tipo da classe.


nao na verdade quero apenas ler o xml, nao quero baixar nem nada..
CLEVERTON 21/11/2017 16:45:57
#478030
vc está carregando através do XmlDocument ?

posta o .InnerXml aqui pra gente ver
MESTRE 22/11/2017 07:57:06
#478036
Citação:

:
vc está carregando através do XmlDocument ?

posta o .InnerXml aqui pra gente ver


   private void button2_Click(object sender, EventArgs e)
{
XmlDocument doc = new XmlDocument();
doc.Load(@[Ô]C:\
ota.xml[Ô]);

//Display all the book titles.
XmlNodeList elemList = doc.GetElementsByTagName([Ô]xNome[Ô]);
for (int i = 0; i < elemList.Count; i++)
{
// Console.WriteLine(elemList[i].InnerXml);
MessageBox.Show(elemList[i].InnerXml);
}
}


Da certo porém [é muito mais trabalhoso que deserealizar e jogar na classe
EDUFS 22/11/2017 11:15:34
#478039
No passado, não conseguia deserealizar o xml baixado pelo site.
Com a ajuda do KERPLUNK, foi criado a classe em anexo.
Tenta com ela.


Dim serializer As New XmlSerializer(GetType(nfeProc))
Dim result As nfeProc = DirectCast(serializer.Deserialize(New XmlTextReader(arqXml)), nfeProc)




CLEVERTON 22/11/2017 12:52:31
#478041
MESTRE

na verdade, eu quis dizer pra vc postar o .InnerXml da variável doc
MESTRE 22/11/2017 13:26:26
#478042
Citação:

:
No passado, não conseguia deserealizar o xml baixado pelo site.
Com a ajuda do KERPLUNK, foi criado a classe em anexo.
Tenta com ela.


Dim serializer As New XmlSerializer(GetType(nfeProc))
Dim result As nfeProc = DirectCast(serializer.Deserialize(New XmlTextReader(arqXml)), nfeProc)





Usando a classe mesmo parece esse erro:

  An unhandled exception of type [ô]System.InvalidOperationException[ô] occurred in System.Xml.dll

Additional information: Erro no documento XML (1, 2).

Dim arqXml As String = [Ô]C:\
ota.xml[Ô]
Dim serializer As New XmlSerializer(GetType(nfeProc))
Dim result As nfeProc = DirectCast(serializer.Deserialize(New XmlTextReader(arqXml)), nfeProc)

Citação:

:
MESTRE

na verdade, eu quis dizer pra vc postar o .InnerXml da variável doc


isso?
GUIMORAES 22/11/2017 13:37:12
#478043
MESTRE

Verifiquei seu XML, e está normal, não está mal formatado. O que você precisa verificar é como está declarados os atributos da sua classe que foi gerada a partir de um schema.
Normalmente quando as classes são geradas por um schema ou pelo próprio arquivo xml, ele atribui o tipo do campo de acordo com a informação que tem no atributo. Só por desencargo, eu deserializei seu arquivo xml em meu projeto, e funcionou normalmente, ou seja, você precisa verificar como estão os tipos dos atributos da classe.
O pessoal falou do campo IE (inscrição estadual), de fato pode ser ele, pois quando criamos as classes a partir de um arquivo, normalmente a informação do campo é numérica, compostas por números inteiros. Neste caso, o VS atribui o tipo para ulong (que está em seu projeto). Para corrigir este erro, troque o tipo para string, e verifique os outros campos, que também podem estar com uma tipagem que não é a ideal.
MESTRE 22/11/2017 14:20:31
#478045
Citação:

:
MESTRE

Verifiquei seu XML, e está normal, não está mal formatado. O que você precisa verificar é como está declarados os atributos da sua classe que foi gerada a partir de um schema.
Normalmente quando as classes são geradas por um schema ou pelo próprio arquivo xml, ele atribui o tipo do campo de acordo com a informação que tem no atributo. Só por desencargo, eu deserializei seu arquivo xml em meu projeto, e funcionou normalmente, ou seja, você precisa verificar como estão os tipos dos atributos da classe.
O pessoal falou do campo IE (inscrição estadual), de fato pode ser ele, pois quando criamos as classes a partir de um arquivo, normalmente a informação do campo é numérica, compostas por números inteiros. Neste caso, o VS atribui o tipo para ulong (que está em seu projeto). Para corrigir este erro, troque o tipo para string, e verifique os outros campos, que também podem estar com uma tipagem que não é a ideal.


Troquei de ulong para String ieField porem mesmo assim continua dando erro:

System.InvalidOperationException: [ô]Erro no documento XML (1, 40).[ô]
Inner Exception InvalidOperationException: <nfeProc xmlns=[ô]http://www.portalfiscal.inf.br/nfe[ô]> não era esperado.
Página 2 de 3 [24 registro(s)]
Tópico encerrado , respostas não são mais permitidas