Sto lavorando con un processo di importazione dei dati in C #, che prende un file zip pieno di file XML e salva specifici punti dati in un database. Questo si ottiene caricando i dati XML in classi compilate dallo schema. La logica di importazione recupera i dati scavando nelle giuste classi e campi.
Lo schema XML è definito da una società diversa e lo schema cambia ogni anno per anni quando viene rilasciata una versione aggiornata del software. Ciò che la mia azienda vorrebbe fare è poter importare diverse versioni dello schema in modo da poter supportare file più vecchi. C'è anche un dibattito sul fatto che questo cambiamento valga la pena.
Il mio piano per raggiungere questo obiettivo sarebbe quello di determinare quale schema utilizzare all'inizio di un'importazione e quindi utilizzare diverse classi di interfaccia per ottenere i dati dall'XML e passarli nuovamente alle classi di importazione, che quindi salverebbero il valori al database. Ci sono oltre 200 classi generate in base allo schema, ma abbiamo solo bisogno di accedere ai dati in circa la metà di essi.
Esistono altri modi per approcciare il supporto di più schemi XML che potrebbero essere più semplici?