Non sono riuscito a trovare un titolo migliore. Proverò a spiegare qual è il problema.
Attualmente sto cercando di creare una struttura di report creata dinamicamente. Definisco il rapporto necessario nel file di configurazione. Quando l'utente vuole un report, semplicemente analizzo da config e create. La mia lotta è su come posso implementare una struttura generale, ma riguarda i campi aggiuntivi forniti dalle interfacce.
Nell'immagine puoi vedere il diagramma delle classi. Quello che voglio è che voglio usare ReportStore
per memorizzare tutti i report condivisi ed estesi e fornire quando necessario. Tuttavia in ReportStore
quando l'utente chiama GetReportByName(reportName)
Ho bisogno di restituire un ReportObject
. Questo oggetto può essere SharedReport
o ExtensiveReport
.
- L'uso di
ISharedReport
per il valore restituito causerà la perdita di un campo aggiuntivo negli oggetti basato suIExtensiveReport
. - Se voglio restituire
IExtensiveReport
, verrà violato. - Se voglio restituire un oggetto semplice e lanciare in
ReportComposer
in base al tipo di valore, sarà complesso e non adatto agli sviluppatori.
Sono aperto a suggerimenti. Grazie in anticipo