public void SerializarParaArquivo(NotaFiscal notaFiscal) { NotaFiscalXmlModel notaModel = MapeadorNotaFiscal.MapearParaNFeModel(notaFiscal); using (XmlWriter streamWriter = XmlWriter.Create(_caminho)) { XmlSerializer serializador = new XmlSerializer(notaModel.GetType()); serializador.Serialize(streamWriter, notaModel); } }
public string SerializarParaString(NotaFiscal notaFiscal) { NotaFiscalXmlModel notaModel = MapeadorNotaFiscal.MapearParaNFeModel(notaFiscal); string xml = string.Empty; using (StringWriter escritor = new StringWriter()) { XmlSerializer serializador = new XmlSerializer(notaModel.GetType()); serializador.Serialize(escritor, notaModel); xml = escritor.ToString(); } return(xml); }
public static NotaFiscalXmlModel MapearParaNFeModel(NotaFiscal notaFiscal) { NotaFiscalXmlModel NFe = new NotaFiscalXmlModel(); NFe.InfNFe = MapeadorInfNFe.MapearParaInfNFeXmlModel(notaFiscal); NFe.InfNFe.Emit = MapeadorEmitente.MapearParaEmitenteXmlModel(notaFiscal.Emitente); NFe.InfNFe.Dest = MapeadorDestinatario.MapearParaDestinatarioXmlModel(notaFiscal.Destinatario); NFe.InfNFe.Trans = MapeadorTransportador.MapearParaTransportadorXmlModel(notaFiscal.Transportador); NFe.InfNFe.Dets = MapeadorDet.MapearParaNFeDetModel(notaFiscal.Produtos); return(NFe); }
public static NotaFiscal MapearDeNFeModel(NotaFiscalXmlModel NFe) { NotaFiscal notaFiscal = new NotaFiscal(); notaFiscal = MapeadorInfNFe.MapearDeInfNFeXmlModel(NFe.InfNFe); notaFiscal.Emitente = MapeadorEmitente.MapearDeEmitenteXmlModel(NFe.InfNFe.Emit); notaFiscal.Destinatario = MapeadorDestinatario.MapearDeDestinatarioXmlModel(NFe.InfNFe.Dest); notaFiscal.Transportador = MapeadorTransportador.MapearDeTransportadorXmlModel(NFe.InfNFe.Trans); notaFiscal.Produtos = MapeadorDet.MapearDeNFeDetModel(NFe.InfNFe.Dets); return(notaFiscal); }
private bool CriarXml(NotaFiscal notaFiscal) { var notaXml = new NotaFiscalXmlModel { NumeroNotaFiscal = notaFiscal.NumeroNotaFiscal, Serie = notaFiscal.Serie, NomeCliente = notaFiscal.NomeCliente.NomeCompleto, EstadoDestino = notaFiscal.EstadoDestino.ToString(), EstadoOrigem = notaFiscal.EstadoOrigem.ToString(), Itens = notaFiscal.ItensDaNotaFiscal .Select(i => new NotaFiscalItemXmlModel { Cfop = i.Cfop.Valor, Icms = i.Icms.ValorIcms, NomeProduto = i.Produto.NomeProduto, CodigoProduto = i.Produto.CodigoProduto, Ipi = i.Ipi.Valor, Desconto = i.Desconto }).ToArray() }; try { var serializer = new XmlSerializer(typeof(NotaFiscalXmlModel)); string path = Path.Combine(DiretorioNota, $"{ notaFiscal.NumeroNotaFiscal }.xml"); using (var writer = new StreamWriter(path)) { serializer.Serialize(writer, notaXml); } return(File.Exists(path)); } catch (Exception e) { return(false); } }