Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 210205|Risposta: 67

[WebAPI] webapi esporta i dati delle liste in un file di tabella Excel

  [Copiato link]
Pubblicato su 16/07/2018 22:26:35 | | | |
Per esportare le tabelle Excel usando C#, è necessario utilizzare NPOI, che viene introdotto come segue:

NPOI si riferisce a un programma costruito sopra la versione 3.x di POI, che può leggere e scrivere documenti Word o Excel senza l'installazione di Office.
NPOI è un progetto open source in C# per la lettura e la scrittura di documenti componenti Microsoft OLE2 come Excel e WORD.

Molto codice su Internet deve essere memorizzato sul server, trasformato in un file fisico e poi esportato (o fornito un link per il download).Il codice di questo post non deve salvare un file fisico, e i dati della lista possono essere esportati e scaricati direttamente

Diamo prima un'occhiata ai rendering:


Usiamo un browser e accediamo all'indirizzo dell'interfaccia :http://localhost:63096/api/download/test per scaricare il file Excel.

Una volta completato il download, apriamo il test.xls e può essere aperto e letto normalmente! Come mostrato di seguito:



Prepara dati di lista, codice:



Il codice webapi è il seguente:



Il metodo EntityListToExcel2003 è il seguente:





Precedente:Asp.net MVC Bundle impacchettisce tutti i file CSS insieme
Prossimo:VS2017 Percorso di input del browser per terminare il debugging
Pubblicato su 07/01/2019 11:22:53 |
Molto bene, io uso questo generico
/// <summary>
        Esporta un insieme di oggetti in EXCEL
        /// </summary>
        <typeparam name="T"> il tipo di oggetto che vuoi esportare</typeparam>
        <param name="objList" > un insieme di oggetti</param>
        <param name="FileName"> il nome del file esportato</param>
        <param name="columnInfo"> informazioni sul nome della colonna</param>
        public void <T>ListToExcel(List<T> objList, stringa FileName, Dizionario<stringa, stringa> columnInfo)
        {
            if (columnInfo.Count == 0) { return; }
            if (objList.Count == 0) { return; }
            Genera HTML EXCEL
            stringa excelStr = "";
            Tipa myType = objList[0]. GetType();
            In base alla riflessione, l'attributo da mostrare si ottiene dalle informazioni sul nome dell'attributo passate in
            List<System.Reflection.PropertyInfo> myPro = nuova List<System.Reflection.PropertyInfo>();
            foreach (stringa cName in columnInfo.Keys)
            {
                System.Reflection.PropertyInfo p = myType.GetProperty(cName);
                se (p != nullo)
                {
                    myPro.Add(p);
                    excelStr += columnInfo[cName] + "\t";
                }
            }
            Se non si trovano attributi disponibili, termina
            if (myPro.Count == 0) { return; }
            excelStr += "\n";
            foreach (T obj in objList)
            {
                foreach (System.Reflection.PropertyInfo p in myPro)
                {
                    excelStr += p.GetValue(obj, null) + "\t";
                }
                excelStr += "\n";
            }
            Output EXCEL
            HttpResponse rs = System.Web.HttpContext.Current.Response;
            rs. ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
            rs. AppendHeader("Content-Disposition", "allegato; filename=" + FileName);
            rs. ContentType = "application/ms-excel";
            rs. Scrivi (excelStr);
            rs. Fine();
        }
 Padrone di casa| Pubblicato su 31/07/2019 13:22:31 |
chenxingen168 Pubblicato il 2019-5-13 22:12
Ottimo codice, grazie per aver condiviso

Prego
Pubblicato su 18/06/2019 14:39:34 |
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Pubblicato su 20/07/2018 08:09:57 |
Montagne e fiumi

Punteggio

Numero di partecipanti1MB-1 contribuire-1 Collasso ragione
QWERTYU -1 -1 Non versare acqua, migliorare la qualità dei post di risposta è dovere di ogni membro.

Vedi tutte le valutazioni

Pubblicato su 25/07/2018 09:23:54 |
Puoi dare un'occhiata, è meglio
Pubblicato su 25/07/2018 09:27:42 |
È piuttosto buono
Pubblicato su 22/08/2018 15:56:01 |
Contenuto del metodo EntityListToExcel2003
Pubblicato su 05/09/2018 16:24:07 |
Acqua acqua

Punteggio

Numero di partecipanti1MB-1 contribuire-1 Collasso ragione
QWERTYU -1 -1 Non versare acqua, migliorare la qualità dei post di risposta è dovere di ogni membro.

Vedi tutte le valutazioni

Pubblicato su 06/09/2018 09:30:18 |
Come uno, segnalo e usalo in futuro!
Pubblicato su 19/09/2018 15:05:17 |
Molto utile, grazie
Pubblicato su 27/09/2018 08:56:58 |
Supporta il proprietario per aggiornare~
Pubblicato su 27/09/2018 09:14:28 |
Scoprire
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com