giuseppex wrote: |
Ciao. Uso visual studio 2005. Ho un progetto per corsi che deve gestire audio , video pdf e altro. Ho scomposto le varie parti del programma in interfacce in modo di avere un oggetto Applicazione che implemente l'interfaccia iApplicazione,contenente uno o piu oggetti che implementano l' interfaccia icorso contenente uno o piu' oggetti che implementano l'interfaccia ipdf,ivideo e iaudio. Come lista contenitrice di Applicazione e corsi uso un arraylist. Ho scomposto in interfacce perchè voglio poter creare oggetti generici e indipendenti(ad es..con un metodo "esegui" parte un video e visualizza nello schermo un .mpg , se è un pdf parte adobe acrobat ecc..)in modo che se devo aggiungere un altro qualsiasi tipo di documento creo una nuova interfaccia e la implemento in un oggetto ecc..
Quello che voglio sapere è se è possibile serializzare questa classe in xml in modo da avere un xml pulito e definirne il "modello"(mi sembra di aver letto qualcosa del genere) dalla classe per cui ricavare le informazioni più disparate tramite xsl ad es per gli oggetti treeview e i menu'. Grazie . Spero di aver postato nel form giusto , altrimenti scusate.
|
|
Grazie Devspy,adesso ci sono riuscito.
Ora utilizzo una classe per deserializzare/serializzare tutti i dati,e creare gli oggetti che implementano l'interfaccia idocumento che è un interfaccia generica per pdf,video e audio.
Vorrei applicare all'xml deserializzato una trasformazione xslt per "mettere a posto" l'xml per creare la treeview solo che nel tag dei nodi ci andrei a mettere l'oggetto che implementa idocumento che ha vari metodi tra cui esegui,modifica ,carica ecc... e dopo un evento afterselect prendo l'oggetto dal tag del nodo ed eseguo semplicemente il metodo generico,se sarà un video lo riprodurra,un modifica apparira' la pagina di modifica ecc....
Il problema è che in questo modo creo 2 volte tutti gli oggetti che implementano idocumento:una volta per la treeview e una volta per la classe principale dove serializzo/deserializzo il tutto.
Ho pensato di creare un attributo guid nell'oggetto che implementa idocumento e di serializzarlo.e di andare a "pescare" dalla classe principale l'oggetto che implementa idocumento che ha quel guid (e di mettere ad esempio nel tag del nodo della treeview il guid)utilizzando come contenitore un hashtable che ha come key il guid e come valore l'oggetto.
Inoltre sarebbe anche piu' comodo per la modifica e la cancellazione.
Un altra idea sarebbe quella di implementare le trasformazioni xslt per le trasformazioni nel metodo xmlread ,sarebbe molto piu' semplice cosi' leggere i dati in porzioni(tutti i video,tutti gli audio ecc...)e caricare la treeview ,ma non so come fare ad ottenere tutto l'xml , forse trasformarlo in una stringa?ma come
Ho delle perplessità , puo' essere il metodo giusto?
grazie.