Genera Excel da Stream

Chiedo se il metodo che occupo è il più ottimale per creare un file excel dai flussi. Chiedo perché questo process può crescere e potrebbe causare problemi.

È un process ricorsivo. In primo luogo fa una richiesta di dati. Crea il stream Crea il file e salva (azure)

Ecco la cosa importnte, se un utente fa una nuova richiesta di lettura del vecchio file viene scaricato e lo unisce con i nuovi dati, tutti nel stream di dati certamente usano la libreria EPPlus, il file può avere 60.000 righe.

Alcuni codici:

//Request Data var dta = db.Database.SqlQuery<ListData>(String.Format(...... //Generate Container - StreamData can be null or contain old data downloaded using (ExcelPackage epck = new ExcelPackage(StreamData)){...} foreach (var item in dta){...} 

La function che richiede più tempo è quando il file viene creato (la libreria crea una row alla volta dalla mia list di dati accessibili) con l'aiuto della libreria

    Spero che tu possa guidarmi per migliorare il mio process, o dirmi un metodo che ti ha aiutato.

    EPPlus ha poche funzioni (sotto) per caricare tutti i dati in un singolo passaggio o per loop per tutti i record. Ho usato LoadFromDataTable () ed è veloce, risparmi molto tempo.

     LoadFromArrays() LoadFromCollection<T>() LoadFromDataReader() LoadFromDataTable() LoadFromText() 

    Oltre a ciò, l'uso di intervalli per fare la formattazione e altre cose invece di looping singole celle.