Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 210205|Odpoveď: 67

[WebAPI] WebAPI exportuje údaje zo zoznamu do Excel tabuľkového súboru

  [Kopírovať odkaz]
Zverejnené 16. 7. 2018 22:26:35 | | | |
Na export excelových tabuliek pomocou C# je potrebné použiť NPOI, ktorý je predstavený nasledovne:

NPOI označuje program postavený na POI verzii 3.x, ktorý dokáže čítať a zapisovať Word alebo Excel dokumenty bez nainštalovaného Office.
NPOI je open-source C# projekt na čítanie a písanie komponentných dokumentov Microsoft OLE2, ako sú Excel a WORD.

Veľa kódu na internete je potrebné uložiť na server, premeniť na fyzický súbor a potom exportovať (alebo dostať odkaz na stiahnutie).Kód tohto príspevku nemusí ukladať fyzický súbor a dáta zo zoznamu je možné exportovať a sťahovať priamo

Najskôr sa pozrime na vizualizácie:


Používame prehliadač a pristupujeme cez adresu rozhrania :http://localhost:63096/api/download/test na stiahnutie excelového súboru.

Keď je stiahnutie dokončené, otvoríme test.xls a dá sa otvoriť a čítať normálne! Ako je uvedené nižšie:



Pripravte dáta zo zoznamu, kód:



Webapi kód je nasledovný:



Metóda EntityListToExcel2003 je nasledovná:





Predchádzajúci:Asp.net MVC Bundle balí všetky CSS súbory dokopy
Budúci:Vstupná cesta do prehliadača vs2017 na ukončenie ladenia
Zverejnené 7. 1. 2019 11:22:53 |
Veľmi dobre, používam toto generikum
/// <summary>
        Exportujte sadu objektov do EXCELu
        /// </summary>
        <typeparam name="T"> typ objektu, ktorý chcete exportovať</typeparam>
        <param name="objList" > množina objektov</param>
        <názov parametra="FileName"> exportovaný názov súboru</param>
        <názov parametra="columnInfo"> informácie o názve stĺpca</param>
        public void ListToExcel <T>(List<T> objList, string FileName, Dictionary<string, string>columnInfo)
        {
            if (columnInfo.Count == 0) { return; }
            if (objList.Count == 0) { return; }
            Generovať EXCEL HTML
            string excelStr = "";
            Typ myType = objList[0]. GetType();
            Na základe reflexie sa atribút, ktorý sa má zobraziť, získava z informácií o názve atribútu zadaných v
            List<System.Reflection.PropertyInfo> myPro = nový List<System.Reflection.PropertyInfo>();
            foreach (reťazec cName v columnInfo.Keys)
            {
                System.Reflection.PropertyInfo p = myType.GetProperty(cName);
                ak (p != null)
                {
                    myPro.Add(p);
                    excelStr += columnInfo[cName] + "\t";
                }
            }
            Ak sa nenájdu žiadne dostupné atribúty, končí
            ak (myPro.Count == 0) { return; }
            excelStr += "\n";
            foreach (T obj v objList)
            {
                foreach (System.Reflection.PropertyInfo p v myPro)
                {
                    excelStr += p.GetValue(obj, null) + "\t";
                }
                excelStr += "\n";
            }
            Výstup EXCEL
            HttpResponse rs = System.Web.HttpContext.Current.Response;
            rs. ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
            rs. AppendHeader("Content-Disposition", "attachment; názov súboru=" + názov súboru);
            rs. ContentType = "application/ms-excel";
            rs. Write(excelStr);
            rs. end();
        }
 Prenajímateľ| Zverejnené 31. 7. 2019 13:22:31 |
chenxingen168 Zverejnené 13. 5. 2019 o 22:12
Dobrý kód, ďakujem za zdieľanie

Rado sa stalo
Zverejnené 18. 6. 2019 14:39:34 |
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Zverejnené 20. 7. 2018 8:09:57 |
Hory a rieky

Skóre

Počet účastníkov1MB-1 prispieť-1 Kolaps dôvod
QWERTYU -1 -1 Nelej vodu, zlepšovanie kvality odpovedí je povinnosťou každého člena.

Zobraziť všetky hodnotenia

Zverejnené 25. 7. 2018 9:23:54 |
Môžeš sa pozrieť, je to lepšie
Zverejnené 25. 7. 2018 9:27:42 |
Je to celkom dobré
Zverejnené 22. 8. 2018 15:56:01 |
Obsah metódy EntityListToExcel2003
Zverejnené 5. 9. 2018 16:24:07 |
Voda, voda, voda

Skóre

Počet účastníkov1MB-1 prispieť-1 Kolaps dôvod
QWERTYU -1 -1 Nelej vodu, zlepšovanie kvality odpovedí je povinnosťou každého člena.

Zobraziť všetky hodnotenia

Zverejnené 6. 9. 2018 9:30:18 |
Napríklad jednu, označte ju a použite ju v budúcnosti!
Zverejnené 19. 9. 2018 15:05:17 |
Veľmi užitočné, ďakujem
Zverejnené 27. 9. 2018 8:56:58 |
Podporte majiteľa pri aktualizácii~
Zverejnené 27. 9. 2018 9:14:28 |
Zistiť
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com