Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 210205|Svare: 67

[WebAPI] webAPI eksporterer listedata til en Excel-tabellfil

  [Kopier lenke]
Publisert på 16.07.2018 22:26:35 | | | |
For å eksportere Excel-tabeller med C# må du bruke NPOI, som introduseres slik:

NPOI refererer til et program bygget oppå POI versjon 3.x, som kan lese og skrive Word- eller Excel-dokumenter uten at Office er installert.
NPOI er et åpen kildekode C#-prosjekt for lesing og skriving av Microsoft OLE2-komponentdokumenter som Excel og WORD.

Mye kode på Internett må lagres på serveren, gjøres om til en fysisk fil, og deretter eksporteres (eller gis en nedlastingslenke).Koden til dette innlegget trenger ikke å lagre en fysisk fil, og listedataene kan eksporteres og lastes ned direkte

La oss ta en titt på renderingene først:


Vi bruker en nettleser og får tilgang til :http://localhost:63096/api/download/test-grensesnittadressen for å laste ned Excel-filen.

Når nedlastingen er fullført, åpner vi test.xls og den kan åpnes og leses som normalt! Som vist nedenfor:



Forbered listedata, kode:



Webapi-koden er som følger:



EntityListToExcel2003-metoden er som følger:





Foregående:Asp.net MVC Bundle pakker alle CSS-filer sammen
Neste:vs2017 nettleserinngangssti for å avslutte feilsøking
Publisert på 07.01.2019 11:22:53 |
Veldig bra, jeg bruker denne generiske
/// <summary>
        Eksporter et sett med objekter til EXCEL
        /// </summary>
        <typeparam name="T"> typen objekt du ønsker å eksportere</typeparam>
        <param name="objList" > et sett objekter</param>
        <param name="FileName"> det eksporterte filnavnet</param>
        <param name="columnInfo"> kolonnenavninformasjon</param>
        public void ListToExcel<T>(List<T> objList, string FileName, Dictionary<string, string> columnInfo)
        {
            hvis (columnInfo.Count == 0) { returner; }
            hvis (objList.Count == 0) { return; }
            Generer EXCEL HTML
            streng excelStr = "";
            Type myType = objList[0]. GetType();
            Basert på refleksjonen hentes attributten som vises fra attributtnavninformasjonen som sendes inn
            List<System.Reflection.PropertyInfo> myPro = ny List<System.Reflection.PropertyInfo>();
            foreach (streng cName i columnInfo.Keys)
            {
                System.Reflection.PropertyInfo p = myType.GetProperty(cName);
                hvis (p != null)
                {
                    myPro.Add(p);
                    excelStr += columnInfo[cName] + "\t";
                }
            }
            Hvis ingen tilgjengelige attributter finnes, avsluttes det
            hvis (myPro.Count == 0) { returner; }
            excelStr += "\n";
            foreach (T obj i objList)
            {
                for each (System.Reflection.PropertyInfo p i myPro)
                {
                    excelStr += p.GetValue(obj, null) + "\t";
                }
                excelStr += "\n";
            }
            Utdata EXCEL
            HttpResponse rs = System.Web.HttpContext.Current.Response;
            Rs. ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
            Rs. AppendHeader ("Innhold-Disposisjon", "vedlegg; filnavn=" + Filnavn);
            Rs. ContentType = "application/ms-excel";
            Rs. Write(excelStr);
            Rs. End();
        }
 Vert| Publisert på 31.07.2019 13:22:31 |
chenxingen168 Publisert 2019-5-13 22:12
God kode, takk for at du delte

Vær så god
Publisert på 18.06.2019 14:39:34 |
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Publisert på 20.07.2018 08:09:57 |
Fjell og elver

Score

Antall deltakere1MB-1 bidra-1 Sammenbrudd grunn
QWERTYU -1 -1 Ikke hell vann, å forbedre kvaliteten på svarinnleggene er hvert medlems ansvar.

Se alle vurderinger

Publisert på 25.07.2018 09:23:54 |
Du kan ta en titt, det er bedre
Publisert på 25.07.2018 09:27:42 |
Det er ganske bra
Publisert på 22.08.2018 15:56:01 |
EntityListToExcel2003 metodeinnhold
Publisert på 05.09.2018 16:24:07 |
Vann vann vann

Score

Antall deltakere1MB-1 bidra-1 Sammenbrudd grunn
QWERTYU -1 -1 Ikke hell vann, å forbedre kvaliteten på svarinnleggene er hvert medlems ansvar.

Se alle vurderinger

Publisert på 06.09.2018 09:30:18 |
Som én, merk den, og bruk den i fremtiden!
Publisert på 19.09.2018 15:05:17 |
Veldig nyttig, takk
Publisert på 27.09.2018 08:56:58 |
Støtt eieren til å oppdatere~
Publisert på 27.09.2018 09:14:28 |
Finne ut
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com