DESSERIALIZANDO - XML - CLASSES

EDUFS 09/03/2017 13:21:19
#472323
Bom dia KERPLUNK.

Segue um xml que tambem nao estou conseguindo desserializar,

Obrigado.
KERPLUNK 09/03/2017 15:34:13
#472328
Ok, os dois me mandaram um XML meio esquisito, geralmente não é assim que estão as NFe que eu vejo, mas enfim. Precisa de uma pequena alteração, na verdade, adição de algumas classes. Conforme abaixo:

[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute([Ô]code[Ô])]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
[System.Xml.Serialization.XmlRootAttribute([Ô]nfeProc[Ô], Namespace = [Ô]http://www.portalfiscal.inf.br/nfe[Ô], IsNullable = false)]
public class nfeProc
{
public TNFe NFe { get; set; }
public protNFe ProtNFe { get; set; }
}

/// <remarks/>
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute([Ô]code[Ô])]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
[System.Xml.Serialization.XmlRootAttribute([Ô]protNFe[Ô], Namespace = [Ô]http://www.portalfiscal.inf.br/nfe[Ô], IsNullable = false)]
public partial class protNFe
{

private protNFeInfProt infProtField;

private decimal versaoField;

/// <remarks/>
public protNFeInfProt infProt
{
get
{
return this.infProtField;
}
set
{
this.infProtField = value;
}
}

/// <remarks/>
[System.Xml.Serialization.XmlAttributeAttribute()]
public decimal versao
{
get
{
return this.versaoField;
}
set
{
this.versaoField = value;
}
}
}

/// <remarks/>
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute([Ô]code[Ô])]
public partial class protNFeInfProt
{

private byte tpAmbField;

private string verAplicField;

private string chNFeField;

private System.DateTime dhRecbtoField;

private ulong nProtField;

private string digValField;

private byte cStatField;

private string xMotivoField;

private string idField;

/// <remarks/>
public byte tpAmb
{
get
{
return this.tpAmbField;
}
set
{
this.tpAmbField = value;
}
}

/// <remarks/>
public string verAplic
{
get
{
return this.verAplicField;
}
set
{
this.verAplicField = value;
}
}

/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute(DataType = [Ô]integer[Ô])]
public string chNFe
{
get
{
return this.chNFeField;
}
set
{
this.chNFeField = value;
}
}

/// <remarks/>
public System.DateTime dhRecbto
{
get
{
return this.dhRecbtoField;
}
set
{
this.dhRecbtoField = value;
}
}

/// <remarks/>
public ulong nProt
{
get
{
return this.nProtField;
}
set
{
this.nProtField = value;
}
}

/// <remarks/>
public string digVal
{
get
{
return this.digValField;
}
set
{
this.digValField = value;
}
}

/// <remarks/>
public byte cStat
{
get
{
return this.cStatField;
}
set
{
this.cStatField = value;
}
}

/// <remarks/>
public string xMotivo
{
get
{
return this.xMotivoField;
}
set
{
this.xMotivoField = value;
}
}

/// <remarks/>
[System.Xml.Serialization.XmlAttributeAttribute()]
public string Id
{
get
{
return this.idField;
}
set
{
this.idField = value;
}
}
}


Está em C#, mas não devem ter problemas para fazer as conversões. Podem colocar no mesmo assembly que já passei. Para desserializar, façam:

XmlSerializer serializer = new XmlSerializer(typeof(nfeProc));
nfeProc resultingMessage = (nfeProc)serializer.Deserialize(new XmlTextReader([Ô]D:\\PASTA\\ARQUIVO.xml[Ô]));

EDUFS 09/03/2017 16:30:31
#472331
KERPLUNK

Funcionou.

Obrigado.
KERPLUNK 09/03/2017 16:39:16
#472332
De nada... Mas seria legal pra mim se pudesse assistir alguns vídeos do meu canal e deixar seu like... isso me ajudaria bastante!
KERPLUNK 09/03/2017 16:46:36
#472333
JADSONSISTENS, essa adaptação vai funcionar também para o arquivo XML que você me mandou em privado.
JANDSONSISTENS 09/03/2017 22:35:04
#472339
Citação:

:
JADSONSISTENS, essa adaptação vai funcionar também para o arquivo XML que você me mandou em privado.



Boa noite Kerplunk, tava sem tempo hoje. Agora que estou vendo as mensagens.
vou fazer amanha bem cedo, essa adaptação
EDUFS 10/03/2017 13:15:53
#472350
Citação:

De nada... Mas seria legal pra mim se pudesse assistir alguns vídeos do meu canal e deixar seu like... isso me ajudaria bastante!



Boa tarde Kerplunk, assisto seu canal, e mostrei para meu filho (16 anos) que esta interessado em aprender a programar.

Muito bom.
Página 3 de 3 [27 registro(s)]
Faça seu login para responder