FatturaElettronica.XMLNodes 1.5.2

Libreria per la gestione dei nodi XML della fattura elettronica basato sulle specifiche dell'Agenzia delle Entrate.

Install-Package FatturaElettronica.XMLNodes -Version 1.5.2
dotnet add package FatturaElettronica.XMLNodes --version 1.5.2
<PackageReference Include="FatturaElettronica.XMLNodes" Version="1.5.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add FatturaElettronica.XMLNodes --version 1.5.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

FatturaElettronica.XMLNodes

STATO BUILD: Build Status [VISUALIZZA DETTAGLI]

FatturaElettronica.XMLNodes

Il progetto FatturaElettronica.XMLNodes nasce dall’esigenza di creare una libreria (scritta in C# .NET Standard 2.0) che permetta di rappresentare tutti i nodi previsti nel formato XML (eXtensible Markup Language) della Fattura Elettronica basato sulle specifiche tecniche dell’Agenzia delle Entrate.

Nota

Ciascuna versione del package corrisponde alla versione delle specifiche tecniche rilasciate dall'Agenzia delle Entrate secondo la seguente nomenclatura: {AG-MajorVersion}.{AG-MinorVersion}.{PubVersion}

  • {AG-MajorVersion} Versione Major come stabilito dall'Agenzia delle Entrate;
  • {AG-MinorVersion} Versione Minor come stabilito dall'Agenzia delle Entrate;
  • {PubVersion} Progressivo della sequenza di pubblicazione relativo a ciascuna Versione Major dell'Agenzia delle Entrate;

Guida per l'utilizzo

In esclusiva sullo store Amazon ed in formato digitale, è disponibile la guida all'utilizzo della libreria open source per la generazione della Fattura Elettronica.

La guida si rivolge, principalmente, agli sviluppatori principianti che desiderano utilizzare la libreria nei loro programmi. Sono contenuti i commenti al codice di esempio non altrimenti recuperabili dai sorgenti presenti nel repository di GitHub.

Vi sono anche informazioni utili e collegamenti al sito dell'Agenzia delle Entrate che possono essere sfruttate da utenti avanzati che vogliano approfondire alcune tematiche relative alla Fatturazione Elettronica.

È importante che il lettore abbia familiarità con lo sviluppo del software e con i concetti base della programmazione ad oggetti.

CopertinaGuida

[ACQUISTA ONLINE]

Utilizzo della libreria

Creazione dell'istanza della classe

    FatturaElettronicaXMLNodes _nodoPrincipale = new FatturaElettronicaXMLNodes();

Aggiunta di un metodo con occorrenza singola

    IdTrasmittente _idTrasmittente = new IdTrasmittente();

Assegnazione del valore ad una proprietà del metodo

    _idTrasmittente.IdPaese = "IT";

Assegnazione del metodo figlio al metodo padre

    datiTrasmissione.IdTrasmittente = _idTrasmittente;

Aggiunta di un metodo con occorrenza multipla

    DatiCassaPrevidenziale datiCassaPrevidenziale = new DatiCassaPrevidenziale();
    List<DatiCassaPrevidenziale> datiCassaPrevidenzialeList = new List<DatiCassaPrevidenziale>();

Assegnazione delle proprietà al nodo con occorrenza multipla

    datiCassaPrevidenziale.TipoCassa = "";
    datiCassaPrevidenziale.AlCassa = "";
    [...]
    datiCassaPrevidenzialeList.Add(datiCassaPrevidenziale);
    datiGeneraliDocumento.DatiCassaPrevidenziale = datiCassaPrevidenzialeList;

Serializzazione finale dei nodi

    XmlRootAttribute XmlRoot = new XmlRootAttribute();
    XmlRoot.Namespace = "http://www.fatturapa.gov.it/sdi/fatturapa/v1.2";
    XmlAttributes myxmlAttribute = new XmlAttributes();
    myxmlAttribute.XmlRoot = XmlRoot;
    XmlAttributeOverrides xmlAttributeOverrides = new XmlAttributeOverrides();
    xmlAttributeOverrides.Add(typeof(FatturaElettronicaXMLNodes), myxmlAttribute);
    // esegue la pulizia degli appributi FatturaElettronicaHeader e FatturaElettronicaBody
    XmlAttributes emptyNsAttribute = new XmlAttributes();
    XmlElementAttribute xElement1 = new XmlElementAttribute();
    xElement1.Namespace = "";
    emptyNsAttribute.XmlElements.Add(xElement1);
    xmlAttributeOverrides.Add(typeof(FatturaElettronicaXMLNodes), "FatturaElettronicaHeader", emptyNsAttribute);
    xmlAttributeOverrides.Add(typeof(FatturaElettronicaXMLNodes), "FatturaElettronicaBody", emptyNsAttribute);
    // specifica la versione di trasmissione se verso PA o Privato
    nodoPrincipale.versione = "FPA12";
    // serializza i nodi ed esegue l'override del nodo principale per aggiungere il tag "pX"
    XmlSerializer ser = new XmlSerializer(nodoPrincipale.GetType(), xmlAttributeOverrides);
    ser = new XmlSerializer(nodoPrincipale.GetType(), new XmlRootAttribute("pX"));
    // aggiunge gli attributi
    XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
    ns.Add("ds", "http://www.w3.org/2000/09/xmldsig#");
    ns.Add("p", "http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2");
    ns.Add("xsi", "http://www.w3.org/2001/XMLSchema-instance");
    var path = percorso + nome_file;
    System.IO.FileStream file = System.IO.File.Create(path);
    ser.Serialize(new System.IO.StreamWriter(file, new System.Text.UTF8Encoding()), nodoPrincipale, ns);
    file.Close();

FatturaElettronica.XMLNodes

STATO BUILD: Build Status [VISUALIZZA DETTAGLI]

FatturaElettronica.XMLNodes

Il progetto FatturaElettronica.XMLNodes nasce dall’esigenza di creare una libreria (scritta in C# .NET Standard 2.0) che permetta di rappresentare tutti i nodi previsti nel formato XML (eXtensible Markup Language) della Fattura Elettronica basato sulle specifiche tecniche dell’Agenzia delle Entrate.

Nota

Ciascuna versione del package corrisponde alla versione delle specifiche tecniche rilasciate dall'Agenzia delle Entrate secondo la seguente nomenclatura: {AG-MajorVersion}.{AG-MinorVersion}.{PubVersion}

  • {AG-MajorVersion} Versione Major come stabilito dall'Agenzia delle Entrate;
  • {AG-MinorVersion} Versione Minor come stabilito dall'Agenzia delle Entrate;
  • {PubVersion} Progressivo della sequenza di pubblicazione relativo a ciascuna Versione Major dell'Agenzia delle Entrate;

Guida per l'utilizzo

In esclusiva sullo store Amazon ed in formato digitale, è disponibile la guida all'utilizzo della libreria open source per la generazione della Fattura Elettronica.

La guida si rivolge, principalmente, agli sviluppatori principianti che desiderano utilizzare la libreria nei loro programmi. Sono contenuti i commenti al codice di esempio non altrimenti recuperabili dai sorgenti presenti nel repository di GitHub.

Vi sono anche informazioni utili e collegamenti al sito dell'Agenzia delle Entrate che possono essere sfruttate da utenti avanzati che vogliano approfondire alcune tematiche relative alla Fatturazione Elettronica.

È importante che il lettore abbia familiarità con lo sviluppo del software e con i concetti base della programmazione ad oggetti.

CopertinaGuida

[ACQUISTA ONLINE]

Utilizzo della libreria

Creazione dell'istanza della classe

    FatturaElettronicaXMLNodes _nodoPrincipale = new FatturaElettronicaXMLNodes();

Aggiunta di un metodo con occorrenza singola

    IdTrasmittente _idTrasmittente = new IdTrasmittente();

Assegnazione del valore ad una proprietà del metodo

    _idTrasmittente.IdPaese = "IT";

Assegnazione del metodo figlio al metodo padre

    datiTrasmissione.IdTrasmittente = _idTrasmittente;

Aggiunta di un metodo con occorrenza multipla

    DatiCassaPrevidenziale datiCassaPrevidenziale = new DatiCassaPrevidenziale();
    List<DatiCassaPrevidenziale> datiCassaPrevidenzialeList = new List<DatiCassaPrevidenziale>();

Assegnazione delle proprietà al nodo con occorrenza multipla

    datiCassaPrevidenziale.TipoCassa = "";
    datiCassaPrevidenziale.AlCassa = "";
    [...]
    datiCassaPrevidenzialeList.Add(datiCassaPrevidenziale);
    datiGeneraliDocumento.DatiCassaPrevidenziale = datiCassaPrevidenzialeList;

Serializzazione finale dei nodi

    XmlRootAttribute XmlRoot = new XmlRootAttribute();
    XmlRoot.Namespace = "http://www.fatturapa.gov.it/sdi/fatturapa/v1.2";
    XmlAttributes myxmlAttribute = new XmlAttributes();
    myxmlAttribute.XmlRoot = XmlRoot;
    XmlAttributeOverrides xmlAttributeOverrides = new XmlAttributeOverrides();
    xmlAttributeOverrides.Add(typeof(FatturaElettronicaXMLNodes), myxmlAttribute);
    // esegue la pulizia degli appributi FatturaElettronicaHeader e FatturaElettronicaBody
    XmlAttributes emptyNsAttribute = new XmlAttributes();
    XmlElementAttribute xElement1 = new XmlElementAttribute();
    xElement1.Namespace = "";
    emptyNsAttribute.XmlElements.Add(xElement1);
    xmlAttributeOverrides.Add(typeof(FatturaElettronicaXMLNodes), "FatturaElettronicaHeader", emptyNsAttribute);
    xmlAttributeOverrides.Add(typeof(FatturaElettronicaXMLNodes), "FatturaElettronicaBody", emptyNsAttribute);
    // specifica la versione di trasmissione se verso PA o Privato
    nodoPrincipale.versione = "FPA12";
    // serializza i nodi ed esegue l'override del nodo principale per aggiungere il tag "pX"
    XmlSerializer ser = new XmlSerializer(nodoPrincipale.GetType(), xmlAttributeOverrides);
    ser = new XmlSerializer(nodoPrincipale.GetType(), new XmlRootAttribute("pX"));
    // aggiunge gli attributi
    XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
    ns.Add("ds", "http://www.w3.org/2000/09/xmldsig#");
    ns.Add("p", "http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2");
    ns.Add("xsi", "http://www.w3.org/2001/XMLSchema-instance");
    var path = percorso + nome_file;
    System.IO.FileStream file = System.IO.File.Create(path);
    ser.Serialize(new System.IO.StreamWriter(file, new System.Text.UTF8Encoding()), nodoPrincipale, ns);
    file.Close();

  • .NETStandard 2.0

    • No dependencies.

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
1.5.2 70 3/16/2020