Domanda

So che questo è un vago aperta domanda a risposta. Sto sperando di ottenere qualche direzione generale.

Ho bisogno di aggiungere cXML di foratura a un ASP.NET C # sito / applicazione. Questo è il sostituto di qualcosa che ho scritto anni fa a ColdFusion.

sono un ragionevolmente esperto sviluppatore C #, ma non ho fatto molto con XML. Sembra che ci sia un sacco di diverse opzioni per l'elaborazione XML in .NET.

Ecco la domanda a risposta aperta: Supponendo che ho un documento XML in una qualche forma, ad esempio, un file o una stringa, qual è il modo migliore per leggere nel mio codice? Voglio ottenere i dati e quindi le dimensioni del documento interrogazione banche dati, ecc Il cXML e le nostre volumi di traffico sono facilmente abbastanza piccolo in modo che il documento di carico di un cXML in memoria non è un problema.

Dovrei:

1) manualmente le classi di build in base alla DTD e utilizzare il Serializzatore XML?

2) Utilizzare uno strumento per generare classi. Ci sono file di esempio cXML scaricabili da Ariba.com. xsd.exe Ho provato a generare un XSD e poi xsd.exe / c per generare classi. Quando provo a deserializzare ricevo errori perché sembra che ci sia la "confusione" intorno se alcuni elementi dovrebbero essere valori singoli o array.

ho provato lo strumento online CodeXS ma che dà gli errori nel suo registro e di errori se provo a deserializzare un documento di esempio.

2) Creazione di un set di dati e ReadXml ()?

3) Creazione di un dataset tipizzato e ReadXml ()?

4) Utilizzare LINQ to XML. Io uso spesso LINQ to Objects, quindi sono familiarità con LINQ in generale, ma sto lottando per vedere che cosa mi dà in questa situazione.

5) Alcuni altri mezzi.

Credo che ho bisogno di migliorare la mia comprensione di XML in generale, ma anche così ... mi manca qualche modo ovvio di fare questo? Nel vecchio sito ColdFusion ho trovato un componente gratuito ( "tag") che sostanzialmente ignorato qualsiasi schema e leggere il codice XML in una "struttura", che è essenzialmente una serie di tabelle hash nidificate che è stato poi facile da leggere nel codice. Questo è stato probabilmente abbastanza sciatto ma ha funzionato.

Ho anche bisogno di generare file XML da miei oggetti C #. Forse LINQ to XML sarà un bene per questo. Potrei iniziare con un documento predefinito "template" e manipolarla prima di salvare.

Grazie per tutti i puntatori ...

È stato utile?

Soluzione

Se è necessario generare XML arbitraria in un formato esatto, si dovrebbe generare manualmente utilizzando LINQ to XML.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top