Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 210205|Antwoord: 67

[WebAPI] webAPI exporteert lijstgegevens naar een Excel-tabel bestand

  [Link kopiëren]
Geplaatst op 16-07-2018 22:26:35 | | | |
Om Excel-tabellen te exporteren met C#, moet je NPOI gebruiken, wat als volgt wordt geïntroduceerd:

NPOI verwijst naar een programma dat is gebouwd bovenop POI versie 3.x, dat Word- of Excel-documenten kan lezen en schrijven zonder Office geïnstalleerd.
NPOI is een open-source C#-project voor het lezen en schrijven van Microsoft OLE2-componentdocumenten zoals Excel en WORD.

Veel code op het internet moet op de server worden opgeslagen, omgezet in een fysiek bestand en vervolgens geëxporteerd worden (of een downloadlink krijgen).De code van dit bericht hoeft geen fysiek bestand op te slaan, en de lijstgegevens kunnen direct worden geëxporteerd en gedownload

Laten we eerst naar de renderings kijken:


We gebruiken een browser en openen het :http://localhost:63096/api/download/test-interfaceadres om het Excel-bestand te downloaden.

Zodra de download voltooid is, openen we de test.xls en kan deze weer normaal worden geopend en gelezen! Zoals hieronder getoond:



Bereid lijstgegevens voor, codeer:



De webapi-code is als volgt:



De EntityListToExcel2003-methode is als volgt:





Vorig:Asp.net MVC Bundle verpakt alle CSS-bestanden samen
Volgend:vs2017 browser invoerpad om debugging te beëindigen
Geplaatst op 07-01-2019 11:22:53 |
Heel goed, ik gebruik deze generieke
/// <summary>
        Exporteer een set objecten naar EXCEL
        /// </summary>
        <typeparam name="T"> het type object dat je wilt exporteren</typeparam>
        <param name="objList" > een set objecten</param>
        <param name="FileName"> de geëxporteerde bestandsnaam</param>
        <param name="columnInfo"> kolomnaaminformatie</param>
        public void ListToExcel<T>(List<T> objList, string FileName, Dictionary<string, string>columnInfo)
        {
            als (columnInfo.Count == 0) { return; }
            als (objList.Count == 0) { return; }
            Genereer EXCEL HTML
            string excelStr = "";
            Type myType = objList[0]. GetType();
            Op basis van de reflectie wordt het te tonen attribuut verkregen uit de informatie die wordt doorgegeven door attribuutnaam
            List<System.Reflection.PropertyInfo> myPro = nieuwe List<System.Reflection.PropertyInfo>();
            foreach (string cName in columnInfo.Keys)
            {
                System.Reflection.PropertyInfo p = myType.GetProperty(cName);
                als (p != nul)
                {
                    myPro.Add(p);
                    excelStr += columnInfo[cName] + "\t";
                }
            }
            Als er geen beschikbare attributen worden gevonden, eindigt het
            als (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";
            }
            Uitvoer EXCEL
            HttpResponse rs = System.Web.HttpContext.Current.Response;
            Rs. ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
            Rs. AppendHeader ("Content-Disposition", "attachment; bestandsnaam=" + Bestandsnaam);
            Rs. ContentType = "applicatie/ms-excel";
            Rs. Write(excelStr);
            Rs. End();
        }
 Huisbaas| Geplaatst op 31-07-2019 13:22:31 |
chenxingen168 Geplaatst op 2019-5-13 22:12
Goede code, bedankt voor het delen

Graag gedaan
Geplaatst op 18-06-2019 14:39:34 |
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Geplaatst op 20-07-2018 08:09:57 |
Bergen en rivieren

Partituur

Aantal deelnemers1MB-1 bijdragen-1 Instorting reden
QWERTYU -1 -1 Giet geen water, het verbeteren van de kwaliteit van de antwoordposts is de plicht van elk lid.

Bekijk alle beoordelingen

Geplaatst op 25-07-2018 09:23:54 |
Je kunt even kijken, het is beter
Geplaatst op 25-07-2018 09:27:42 |
Het is best goed
Geplaatst op 22-08-2018 15:56:01 |
Inhoud van de EntityListToExcel2003-methode
Geplaatst op 05-09-2018 16:24:07 |
Water, water, water

Partituur

Aantal deelnemers1MB-1 bijdragen-1 Instorting reden
QWERTYU -1 -1 Giet geen water, het verbeteren van de kwaliteit van de antwoordposts is de plicht van elk lid.

Bekijk alle beoordelingen

Geplaatst op 06-09-2018 09:30:18 |
Zoals één, markeer hem en gebruik hem in de toekomst!
Geplaatst op 19-09-2018 15:05:17 |
Heel nuttig, bedankt
Geplaatst op 27-09-2018 08:56:58 |
Steun de eigenaar bij het updaten~
Geplaatst op 27-09-2018 09:14:28 |
Zoek uit
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com