Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 210205|Απάντηση: 67

[Διαδικτυακό API] Το webapi εξάγει δεδομένα λίστας σε ένα αρχείο πίνακα Excel

  [Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 16/7/2018 10:26:35 μ.μ. | | | |
Για να εξαγάγετε πίνακες Excel χρησιμοποιώντας C#, πρέπει να χρησιμοποιήσετε το NPOI, το οποίο παρουσιάζεται ως εξής:

Το NPOI αναφέρεται σε ένα πρόγραμμα που βασίζεται στην έκδοση POI 3.x, το οποίο μπορεί να διαβάζει και να γράφει έγγραφα Word ή Excel χωρίς εγκατεστημένο το Office.
Το NPOI είναι ένα έργο ανοιχτού κώδικα C# για την ανάγνωση και τη σύνταξη εγγράφων στοιχείων Microsoft OLE2 όπως το Excel και το WORD.

Πολύς κώδικας στο Διαδίκτυο πρέπει να αποθηκευτεί στον διακομιστή, να μετατραπεί σε φυσικό αρχείο και στη συνέχεια να εξαχθεί (ή να δοθεί ένας σύνδεσμος λήψης).Ο κώδικας αυτής της ανάρτησης δεν χρειάζεται να αποθηκεύσει ένα φυσικό αρχείο και τα δεδομένα της λίστας μπορούν να εξαχθούν και να ληφθούν απευθείας

Ας ρίξουμε μια ματιά πρώτα στις αποδόσεις:


Χρησιμοποιούμε ένα πρόγραμμα περιήγησης και έχουμε πρόσβαση στη διεύθυνση διεπαφής :http://localhost:63096/api/download/test για λήψη του αρχείου excel.

Μόλις ολοκληρωθεί η λήψη, ανοίγουμε το test.xls και μπορεί να ανοίξει και να διαβαστεί κανονικά! Οπως φαίνεται παρακάτω:



Προετοιμασία δεδομένων λίστας, κώδικας:



Ο κώδικας webapi έχει ως εξής:



Η μέθοδος EntityListToExcel2003 έχει ως εξής:





Προηγούμενος:Asp.net MVC Bundle συσκευάζει όλα τα αρχεία CSS μαζί
Επόμενος:Διαδρομή εισόδου προγράμματος περιήγησης vs2017 για τερματισμό εντοπισμού σφαλμάτων
Δημοσιεύτηκε στις 7/1/2019 11:22:53 π.μ. |
Πολύ καλό, χρησιμοποιώ αυτό το γενικό
/// <summary>
        Εξαγωγή συνόλου αντικειμένων στο EXCEL
        /// </summary>
        <typeparam name="T"> τον τύπο του αντικειμένου που θέλετε να εξαγάγετε</typeparam>
        <param name="objList" > ένα σύνολο αντικειμένων</param>
        <param name="FileName"> το όνομα του εξαγόμενου αρχείου</param>
        <param name="columnInfo"> πληροφορίες ονόματος στήλης</param>
        δημόσιο κενό ListToExcel<T>(Λίστα<T> objList, συμβολοσειρά FileName, Λεξικό<συμβολοσειρά, συμβολοσειρά> columnInfo)
        {
            if (columnInfo.Count == 0) { επιστροφή; }
            αν (objList.Count == 0) { επιστροφή; }
            Δημιουργία EXCEL HTML
            συμβολοσειρά excelStr = "";
            Πληκτρολογήστε myType = objList[0]. GetType();
            Με βάση την αντανάκλαση, το χαρακτηριστικό που θα εμφανίζεται λαμβάνεται από τις πληροφορίες ονόματος χαρακτηριστικού που μεταβιβάζονται στο
            List<System.Reflection.PropertyInfo> myPro = νέα List<System.Reflection.PropertyInfo>();
            foreach (συμβολοσειρά cName στη στήληInfo.Keys)
            {
                System.Reflection.PropertyInfo p = myType.GetProperty(cName);
                αν (p != null)
                {
                    myPro.Add(p);
                    excelStr += columnInfo[cName] + "\t";
                }
            }
            Εάν δεν βρεθούν διαθέσιμα χαρακτηριστικά, τελειώνει
            αν (myPro.Count == 0) { επιστροφή; }
            excelStr += "\n";
            foreach (T obj in objList)
            {
                foreach (System.Reflection.PropertyInfo p στο myPro)
                {
                    excelStr += p.GetValue(obj, null) + "\t";
                }
                excelStr += "\n";
            }
            Έξοδος EXCEL
            HttpResponse rs = System.Web.HttpContext.Current.Response;
            rs. ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
            rs. AppendHeader("Περιεχόμενο-Διάθεση", "συνημμένο; όνομα αρχείου=" + Όνομα_αρχείου);
            rs. ContentType = "εφαρμογή/ms-excel";
            rs. Εγγραφή(excelStr);
            rs. Τέλος();
        }
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 31/7/2019 1:22:31 μ.μ. |
chenxingen168 Δημοσιεύτηκε στις 2019-5-13 22:12
Καλός κώδικας, ευχαριστώ για την κοινή χρήση

Παρακαλώ
Δημοσιεύτηκε στις 18/6/2019 2:39:34 μ.μ. |
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Δημοσιεύτηκε στις 20/7/2018 8:09:57 π.μ. |
Βουνά και ποτάμια

Παρτιτούρα

Αριθμός συμμετεχόντων1ΜΒ-1 συνεισφέρω-1 Κατάρρευση λόγος
ΚΟΥΈΡΤΙΟΥ -1 -1 Μην ρίχνετε νερό, η βελτίωση της ποιότητας των απαντήσεων είναι καθήκον κάθε μέλους.

Δείτε όλες τις αξιολογήσεις

Δημοσιεύτηκε στις 25/7/2018 9:23:54 π.μ. |
Μπορείτε να ρίξετε μια ματιά, είναι καλύτερα
Δημοσιεύτηκε στις 25/7/2018 9:27:42 π.μ. |
Είναι πολύ καλό
Δημοσιεύτηκε στις 22/8/2018 3:56:01 μ.μ. |
Περιεχόμενο μεθόδου EntityListToExcel2003
Δημοσιεύτηκε στις 5/9/2018 4:24:07 μ.μ. |
Νερό νερό νερό

Παρτιτούρα

Αριθμός συμμετεχόντων1ΜΒ-1 συνεισφέρω-1 Κατάρρευση λόγος
ΚΟΥΈΡΤΙΟΥ -1 -1 Μην ρίχνετε νερό, η βελτίωση της ποιότητας των απαντήσεων είναι καθήκον κάθε μέλους.

Δείτε όλες τις αξιολογήσεις

Δημοσιεύτηκε στις 6/9/2018 9:30:18 π.μ. |
Σαν ένα, σημειώστε το και χρησιμοποιήστε το στο μέλλον!
Δημοσιεύτηκε στις 19/9/2018 3:05:17 μ.μ. |
Πολύ χρήσιμο, ευχαριστώ
Δημοσιεύτηκε στις 27/9/2018 8:56:58 π.μ. |
Υποστηρίξτε τον κάτοχο για ενημέρωση~
Δημοσιεύτηκε στις 27/9/2018 9:14:28 π.μ. |
Βρες
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com