Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 210205|Răspunde: 67

[WebAPI] webapi exportă datele listei într-un fișier Excel de tabel

  [Copiază linkul]
Postat pe 16.07.2018 22:26:35 | | | |
Pentru a exporta tabele Excel folosind C#, trebuie să folosești NPOI, care este introdus astfel:

NPOI se referă la un program construit peste POI versiunea 3.x, care poate citi și scrie documente Word sau Excel fără Office instalat.
NPOI este un proiect open-source C# pentru citirea și scrierea documentelor componente Microsoft OLE2, cum ar fi Excel și WORD.

O mare parte din cod de pe Internet trebuie stocat pe server, transformat într-un fișier fizic și apoi exportat (sau primit un link de descărcare).Codul acestei postări nu necesită salvarea unui fișier fizic, iar datele listei pot fi exportate și descărcate direct

Să aruncăm o privire mai întâi la randare:


Folosim un browser și accesăm adresa interfeței :http://localhost:63096/api/download/test pentru a descărca fișierul Excel.

După ce descărcarea este finalizată, deschidem test.xls și poate fi deschisă și citită normal! Așa cum se arată mai jos:



Pregătește datele listei, codul:



Codul webapi este următorul:



Metoda EntityListToExcel2003 este următoarea:





Precedent:Asp.net MVC Bundle împachetează toate fișierele CSS împreună
Următor:vs2017 Calea de intrare a browserului pentru oprirea depanării
Postat pe 07.01.2019 11:22:53 |
Foarte bine, folosesc acest generic
/// <summary>
        Exportă un set de obiecte în EXCEL
        /// </summary>
        <typeparam name="T"> tipul de obiect pe care vrei să-l exporti</typeparam>
        <param name="objList" > un set de obiecte</param>
        <param name="FileName"> numele fișierului exportat</param>
        <param name="columnInfo"> informații despre numele coloanei</param>
        public void <T>ListToExcel(List<T> objList, string FileName, Dictionary<string, string> columnInfo)
        {
            if (columnInfo.Count == 0) { return; }
            if (objList.Count == 0) { return; }
            Generează HTML EXCEL
            șirul excelStr = "";
            Type myType = objList[0]. GetType();
            Pe baza reflecției, atributul care urmează să fie afișat este obținut din informațiile despre numele atributului transmise în
            List<System.Reflection.PropertyInfo> myPro = new List<System.Reflection.PropertyInfo>();
            foreach (șir cName în columnInfo.Keys)
            {
                System.Reflection.PropertyInfo p = myType.GetProperty(cName);
                dacă (p != nul)
                {
                    myPro.Add(p);
                    excelStr += columnInfo[cName] + "\t";
                }
            }
            Dacă nu se găsesc atribute disponibile, se încheie
            if (myPro.Count == 0) { return; }
            excelStr += "\n";
            foreach (T obj în objList)
            {
                foreach (System.Reflection.PropertyInfo p în myPro)
                {
                    excelStr += p.GetValue(obj, null) + "\t";
                }
                excelStr += "\n";
            }
            Ieșire EXCEL
            HttpResponse rs = System.Web.HttpContext.Current.Response;
            rs. ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
            rs. AppendHeader("Content-Disposition", "attachment; filename=" + FileName);
            rs. ContentType = "application/ms-excel";
            rs. Scrie (excelStr);
            rs. Sfârșit();
        }
 Proprietarul| Postat pe 31.07.2019 13:22:31 |
chenxingen168 Postat la 2019-5-13 22:12
Cod bun, mulțumesc că ai împărtășit

Cu plăcere
Postat pe 18.06.2019 14:39:34 |
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Postat pe 20.07.2018 08:09:57 |
Munți și râuri

Scor

Numărul participanților1MB-1 Contribui-1 Colaps rațiune
QWERTYU -1 -1 Nu turnați apă, îmbunătățirea calității postărilor de răspuns este datoria fiecărui membru.

Vezi toate ratingurile

Postat pe 25.07.2018 09:23:54 |
Poți să arunci o privire, e mai bine
Postat pe 25.07.2018 09:27:42 |
E destul de bun
Postat pe 22.08.2018 15:56:01 |
Conținutul metodei EntityListToExcel2003
Postat pe 05.09.2018 16:24:07 |
Apă apă apă

Scor

Numărul participanților1MB-1 Contribui-1 Colaps rațiune
QWERTYU -1 -1 Nu turnați apă, îmbunătățirea calității postărilor de răspuns este datoria fiecărui membru.

Vezi toate ratingurile

Postat pe 06.09.2018 09:30:18 |
Ca unul, marchează-l și folosește-l pe viitor!
Postat pe 19.09.2018 15:05:17 |
Foarte util, mulțumesc
Postat pe 27.09.2018 08:56:58 |
Susține proprietarul să actualizeze~
Postat pe 27.09.2018 09:14:28 |
Află
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com