Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 210205|Svar: 67

[WebAPI] webAPI exporterar listdata till en Excel-tabellfil

  [Kopiera länk]
Publicerad på 2018-07-16 22:26:35 | | | |
För att exportera Excel-tabeller med C# behöver du använda NPOI, vilket introduceras enligt följande:

NPOI avser ett program byggt ovanpå POI version 3.x, som kan läsa och skriva Word- eller Excel-dokument utan att Office är installerat.
NPOI är ett öppen källkodsprojekt i C# för att läsa och skriva Microsoft OLE2-komponentdokument såsom Excel och WORD.

Mycket kod på internet måste lagras på servern, göras om till en fysisk fil och sedan exporteras (eller ges en nedladdningslänk).Koden i detta inlägg behöver inte spara en fysisk fil, och listdata kan exporteras och laddas ner direkt

Låt oss först titta på renderingarna:


Vi använder en webbläsare och får tillgång till :http://localhost:63096/api/download/test-gränssnittets adress för att ladda ner Excel-filen.

När nedladdningen är klar öppnar vi test.xls och den kan öppnas och läsas som vanligt! Som visas nedan:



Förbered listdata, kod:



Webapi-koden är som följer:



EntityListToExcel2003-metoden är följande:





Föregående:Asp.net MVC Bundle paketerar alla CSS-filer tillsammans
Nästa:vs2017 webbläsarens inmatningsväg för att avsluta felsökning
Publicerad på 2019-01-07 11:22:53 |
Mycket bra, jag använder denna generiska
/// <summary>
        Exportera en uppsättning objekt till EXCEL
        /// </summary>
        <typeparam name="T"> typen av objekt du vill exportera</typeparam>
        <param name="objList" > en mängd objekt</param>
        <param name="FileName"> det exporterade filnamnet</param>
        <param name="columnInfo"> kolumnnamnsinformation</param>
        public void ListToExcel <T>(List<T> objList, string FileName, Dictionary<string, string>kolumnInfo)
        {
            om (columnInfo.Count == 0) { returnera; }
            om (objList.Count == 0) { returnera; }
            Generera EXCEL HTML
            string excelStr = "";
            Skriv myType = objList[0]. GetType();
            Baserat på reflektionen erhålls attributet som ska visas från attributnamnsinformationen som skickas in
            List<System.Reflection.PropertyInfo> myPro = ny List<System.Reflection.PropertyInfo>();
            foreach (sträng cName i columnInfo.Keys)
            {
                System.Reflection.PropertyInfo p = myType.GetProperty(cName);
                om (p != null)
                {
                    myPro.Add(p);
                    excelStr += kolumnInfo[cName] + "\t";
                }
            }
            Om inga tillgängliga attribut hittas, upphör det
            om (myPro.Count == 0) { returnera; }
            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("Innehåll-Disposition", "bilaga; filnamn=" + Filnamn);
            Rs. ContentType = "application/ms-excel";
            Rs. Skriv(excelStr);
            Rs. Slut();
        }
 Hyresvärd| Publicerad på 2019-07-31 13:22:31 |
chenxingen168 Publicerad den 2019-5-13 22:12
Bra kod, tack för att du delade med dig

Varsågod
Publicerad på 2019-06-18 14:39:34 |
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Publicerad på 2018-07-20 08:09:57 |
Berg och floder

Tjog

Antal deltagare1MB-1 bidra-1 Kollaps förnuft
QWERTYU -1 -1 Häll inte vatten, att förbättra kvaliteten på svarsinläggen är varje medlems plikt.

Se alla betyg

Publicerad på 2018-07-25 09:23:54 |
Du kan ta en titt, det är bättre
Publicerad på 2018-07-25 09:27:42 |
Det är ganska bra
Publicerad på 2018-08-22 15:56:01 |
EntityListToExcel2003-metodinnehåll
Publicerad på 2018-09-05 16:24:07 |
Vatten, vatten, vatten

Tjog

Antal deltagare1MB-1 bidra-1 Kollaps förnuft
QWERTYU -1 -1 Häll inte vatten, att förbättra kvaliteten på svarsinläggen är varje medlems plikt.

Se alla betyg

Publicerad på 2018-09-06 09:30:18 |
Gilla en, markera den och använd den i framtiden!
Publicerad på 2018-09-19 15:05:17 |
Mycket användbart, tack
Publicerad på 2018-09-27 08:56:58 |
Stöd ägaren att uppdatera~
Publicerad på 2018-09-27 09:14:28 |
Komma på
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com