Jak eksportować pliki CSV i Excel w Razor
Szukasz sposobu na eksport danych do pliku Excel przy użyciu Razor Pages? W tym artykułe wyjaśniono, jak to zrobić przy użyciu IronXL for .NET.
Jak eksportować pliki CSV i Excel w Razor
- Zainstaluj bibliotekę C# do eksportowania plików CSV i Excel
- Utwórz obiekt WorkBook i użyj metody
CreateWorkSheet,aby utworzyć arkusz WorkSheet - Wypełnij arkusz danymi oraz zmień styl komórek
- Zwróć skoroszyt jako strumień i określ format jako arkusz kalkulacyjny do wyeksportowania do programu Excel
- Określ format jako text/csv, aby wyeksportować jako CSV za pomocą aplikacji internetowej Razor
1. IronXL
IronXL to biblioteka .NET służąca do pracy z plikami Excel. Jest oparty na OpenXML SDK i zapewnia prosty interfejs API do odczytu, zapisu i manipulacji arkuszami kalkulacyjnymi Excel. IronXL może być używany w różnych aplikacjach .NET, w tym w aplikacjach internetowych, aplikacjach desktopowych i aplikacjach konsolowych. IronXL oferuje szereg funkcji do pracy z dokumentami Excel, w tym możliwość odczytu i zapisu danych w poszczególnych komórkach, tworzenia wykresów i diagramów oraz wykonywania złożonych obliczeń. Obsługuje również zaawansowane funkcje programu Excel, takie jak tabele przestawne, formatowanie warunkówe i sprawdzanie poprawności danych.
Eksportowanie danych do plików Excel i CSV jest powszechnym zadaniem w tworzeniu stron internetowych, a Razor i IronXL ułatwiają jego realizację. Dzięki IronXL programiści mogą z łatwością tworzyć arkusze kalkulacyjne Excel i zapisywać je w pliku lub strumieniu. Następnie można użyć Razor do generowania dynamicznej treści zawierającej linki do dokumentów Excel, umożliwiając użytkownikom pobieranie ich bezpośrednio ze strony internetowej. Plik w formacie CSV można również wygenerować za pomocą IronXL i pobrać w podobny sposób za pomocą Razor. Ułatwia to tworzenie raportów i innych treści opartych na danych, które można łatwo udostępniać innym. Ogólnie rzecz biorąc, połączenie Razor i IronXL .NET Core Razor Pages zapewnia potężny zestaw narzędzi dla programistów internetowych, którzy chcą tworzyć dynamiczne, oparte na danych strony internetowe.
2. Wymagania wstępne
Przed użyciem Razor w Visual Studio użytkownicy powinni spełnić kilka warunków wstępnych. Oto niektóre z najważniejszych:
- Jako użytkownik IronXL musisz mieć zainstalowane Visual Studio na swoim komputerze. Program Visual Studio Community można pobrać bezpłatnie z oficjalnej strony internetowej firmy Microsoft.
- Musisz również mieć zainstalowany na komputerze zestaw SDK .NET Core. Najnowszą wersję zestawu SDK .NET Core można pobrać z oficjalnej strony internetowej firmy Microsoft.
- Przed rozpoczęciem pracy z Razor View należy skonfigurować środowisko programistyczne.
3. Tworzenie nowego projektu w Visual Studio
Aby utworzyć nowy projekt w Visual Studio, wykonaj następujące czynności:
- Otwórz program Visual Studio.
-
Kliknij "Utwórz nowy projekt" w oknie startowym lub kliknij "Plik" > "Nowy" > "Projekt" na pasku menu.
Okno startowe programu Visual Studio -
Wybierz typ projektu, który chcesz utworzyć. Aby korzystać z Razor Pages, wybierz opcję Aplikacja internetowa .NET Core i kliknij Dalej.
Utwórz nową aplikację internetową .NET Core w programie Visual Studio -
Pojawi się nowe okno, wpisz nazwę nowego projektu i lokalizację. Następnie kliknij Dalej.
Skonfiguruj nowy projekt - Teraz w nowym oknie wybierz docelowy framework, zaznacz opcję konfiguracji dla HTTPS i kliknij "Utwórz".
- W ten sposób tworzony jest nowy projekt aplikacji internetowej Visual Studio .NET Core.
4. Zainstaluj IronXL
Bibliotekę IronXL można pobrać i zainstalować na różne sposoby.
Są to:
- Korzystanie z pakietów NuGet w Visual Studio.
- Korzystanie z wiersza poleceń programu Visual Studio.
4.1 Korzystanie z programu Visual Studio
Aby zainstalować bibliotekę IronXL, najprostszym sposobem jest użycie menedżera pakietów NuGet. Otwórz menedżera i wyszukaj IronXL w zakładce przeglądania. Wybierz IronXL z wyników wyszukiwania i zainstaluj go.
Poniższy zrzut ekranu pokazuje, jak otworzyć menedżera pakietów NuGet w programie Visual Studio.
Przejdź do menedżera pakietów NuGet
IronXL w wynikach wyszukiwania:
Wyszukaj IronXL w interfejsie użytkownika menedżera pakietów NuGet
4.2 Korzystanie z wiersza poleceń programu Visual Studio
Wykorzystanie konsoli do wykonywania operacji jest popularnym wyborem dla wielu osób. Jeśli wolisz zainstalować IronXL za pomocą wiersza poleceń, wykonaj następujące kroki:
- W programie Visual Studio przejdź do menu Narzędzia > Menedżer pakietów NuGet > Konsola menedżera pakietów.
- Wpisz następujący wiersz w zakładce Konsola menedżera pakietów, co spowoduje zainstalowanie pakietu:
Install-Package IronXl.Excel
Teraz pakiet zostanie pobrany/zainstalowany w bieżącym projekcie i będzie gotowy do użycia.
Zainstaluj IronXL w konsoli menedżera pakietów
5. Eksportowanie danych do pliku Excel w Razor .NET Core
Po utworzeniu projektu powstaje prosty interfejs aplikacji Razor. Teraz zmień interfejs, aby umożliwić eksport do Excela.
Interfejs internetowy nowo utworzonego projektu
Zmień powyższy interfejs, edytując plik index.cshtml w katalogu Pages.
@page
@model IndexModel
@{
ViewData["Title"] = "Home page";
}
<div class="text-center">
<h1 class="display-4">IronXL Generate Excel File</h1>
<p class="m-5">This will be the combination of Razor and IronXL, together they will Export data to Excel file.</p>
<form method="post" asp-page-handler="Export">
<button class="btn btn-success p-3">Export Excel File!</button>
</form>
</div>
@page
@model IndexModel
@{
ViewData["Title"] = "Home page";
}
<div class="text-center">
<h1 class="display-4">IronXL Generate Excel File</h1>
<p class="m-5">This will be the combination of Razor and IronXL, together they will Export data to Excel file.</p>
<form method="post" asp-page-handler="Export">
<button class="btn btn-success p-3">Export Excel File!</button>
</form>
</div>
page model ReadOnly Property () As IndexModel
ViewData("Title") = "Home page"
End Property
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'<div class="text-center"> <h1 class="display-4"> IronXL Generate Excel File</h1> <p class="m-5"> This will be the combination @of Razor @and IronXL, together they will Export data @to Excel file.</p> <form method="post" asp-page-handler="Export"> <button class="btn btn-success p-3"> Export Excel File!</button> </form> </div>
Ten kod zmieni wygląd strony głównej i doda przycisk eksportu.
Nowy interfejs z przyciskiem eksportu
Teraz utwórz metodę OnPostExport w pliku index.cshtml.cs i wpisz następujący kod. Ten kod generuje arkusz, zapisuje nazwy kolumn pogrubioną czcionką i pozwala ustawić inne opcje stylizacji, takie jak rozmiar czcionki i kolor tła. Można to potraktować jako prosty przykład eksportowania danych z bazy danych do pliku Excel.
public FileResult OnPostExport()
{
// Create a new workbook with the Excel file format
WorkBook workBook = new WorkBook(IronXl.ExcelFileFormat.XLSX);
// Create a new worksheet in the workbook
WorkSheet workSheet = workBook.CreateWorkSheet("data");
// Add data and styles to the new worksheet
workSheet["A1"].Value = "Name";
workSheet["B1"].Value = "Email";
workSheet["C1"].Value = "Marks";
workSheet["D1"].Value = "Percentage";
// Set styling for column headers
workSheet["A1:D1"].Style.Font.Bold = true;
// Filling the worksheet with data
workSheet["A2"].Value = "Nick";
workSheet["A3"].Value = "Roy";
workSheet["A4"].Value = "Chris";
workSheet["B2"].Value = "Nick@gmail.com";
workSheet["B3"].Value = "Roy123@gmail.com";
workSheet["B4"].Value = "Chris1999@gmail.com";
workSheet["C2"].Value = "850";
workSheet["C3"].Value = "710";
workSheet["C4"].Value = "990";
workSheet["D2"].Value = "85%";
workSheet["D3"].Value = "71%";
workSheet["D4"].Value = "99%";
// Return the file as an Excel sheet
return File(workBook.ToStream().ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "Exported.xlsx");
}
public FileResult OnPostExport()
{
// Create a new workbook with the Excel file format
WorkBook workBook = new WorkBook(IronXl.ExcelFileFormat.XLSX);
// Create a new worksheet in the workbook
WorkSheet workSheet = workBook.CreateWorkSheet("data");
// Add data and styles to the new worksheet
workSheet["A1"].Value = "Name";
workSheet["B1"].Value = "Email";
workSheet["C1"].Value = "Marks";
workSheet["D1"].Value = "Percentage";
// Set styling for column headers
workSheet["A1:D1"].Style.Font.Bold = true;
// Filling the worksheet with data
workSheet["A2"].Value = "Nick";
workSheet["A3"].Value = "Roy";
workSheet["A4"].Value = "Chris";
workSheet["B2"].Value = "Nick@gmail.com";
workSheet["B3"].Value = "Roy123@gmail.com";
workSheet["B4"].Value = "Chris1999@gmail.com";
workSheet["C2"].Value = "850";
workSheet["C3"].Value = "710";
workSheet["C4"].Value = "990";
workSheet["D2"].Value = "85%";
workSheet["D3"].Value = "71%";
workSheet["D4"].Value = "99%";
// Return the file as an Excel sheet
return File(workBook.ToStream().ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "Exported.xlsx");
}
Public Function OnPostExport() As FileResult
' Create a new workbook with the Excel file format
Dim workBook As New WorkBook(IronXl.ExcelFileFormat.XLSX)
' Create a new worksheet in the workbook
Dim workSheet As WorkSheet = workBook.CreateWorkSheet("data")
' Add data and styles to the new worksheet
workSheet("A1").Value = "Name"
workSheet("B1").Value = "Email"
workSheet("C1").Value = "Marks"
workSheet("D1").Value = "Percentage"
' Set styling for column headers
workSheet("A1:D1").Style.Font.Bold = True
' Filling the worksheet with data
workSheet("A2").Value = "Nick"
workSheet("A3").Value = "Roy"
workSheet("A4").Value = "Chris"
workSheet("B2").Value = "Nick@gmail.com"
workSheet("B3").Value = "Roy123@gmail.com"
workSheet("B4").Value = "Chris1999@gmail.com"
workSheet("C2").Value = "850"
workSheet("C3").Value = "710"
workSheet("C4").Value = "990"
workSheet("D2").Value = "85%"
workSheet("D3").Value = "71%"
workSheet("D4").Value = "99%"
' Return the file as an Excel sheet
Return File(workBook.ToStream().ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "Exported.xlsx")
End Function
Powyższy kod utworzy skoroszyt i zwróci plik jako arkusz Excel. Ta metoda jest powiązana z przyciskiem, a po jego kliknięciu automatycznie utworzy i pobierze eksportowany plik XLSX.
Eksportuj plik XLSX w przeglądarce
Dane w wyeksportowanym pliku XLSX
6. Eksportuj dane do pliku CSV
Możesz łatwo eksportować pliki tekstowe CSV, wprowadzając jedną zmianę w powyższym kodzie. Wystarczy zastąpić kod zwracający plik poniższym kodem, a strona Razor zwróci plik CSV.
return File(workBook.ToStream().ToArray(), "text/csv", "Student.csv");
return File(workBook.ToStream().ToArray(), "text/csv", "Student.csv");
Return File(workBook.ToStream().ToArray(), "text/csv", "Student.csv")
Eksportuj plik CSV w przeglądarce
Dane w wyeksportowanym pliku CSV
7. Podsumowanie
Eksportowanie danych do arkuszy Excel i plików CSV jest częstym zadaniem w tworzeniu stron internetowych, a Razor i IronXL ułatwiają jego realizację. Dzięki IronXL programiści mogą z łatwością tworzyć arkusze kalkulacyjne Excel i zapisywać je w pliku lub strumieniu. Następnie można użyć Razor do generowania dynamicznej treści zawierającej linki do dokumentów Excel, umożliwiając użytkownikom pobieranie ich bezpośrednio ze strony internetowej. Ułatwia to tworzenie raportów i innych treści opartych na danych, które można łatwo udostępniać innym.
Połączenie Razor i IronXL .NET Core Razor Pages zapewnia potężny zestaw narzędzi dla programistów internetowych, którzy chcą tworzyć dynamiczne, oparte na danych strony internetowe. Aby rozpocząć korzystanie z Razor i IronXL, należy zainstalować Visual Studio oraz .NET Core SDK. Następnie można łatwo utworzyć nowy projekt w Visual Studio i zainstalować bibliotekę IronXL. Wreszcie, zmieniając interfejs strony głównej i tworząc metodę OnPostExport, programiści mogą eksportować dane do dokumentów Excel w kilku prostych krokach.
Aby dowiedzieć się więcej o IronXL, Razorze oraz o tym, jak eksportować dane do plików Excel i CSV, odwiedź poniższą stronę.
IronXL jest bezpłatny do użytku w celach programistycznych o charakterze niekomercyjnym. Dostępna jest bezpłatna wersja próbna do testowania w środowisku produkcyjnym. Zapoznaj się z planami cenowymi, aby uzyskać więcej informacji na temat cen i licencji.
Użytkownicy mogą również skorzystać z Iron Suite, pakietu 5 profesjonalnych bibliotek ASP.NET Core, w tym IronXL, IronPDF i innych.
Często Zadawane Pytania
Jak mogę wyeksportować dane do Excela za pomocą Razor Pages?
Możesz używać IronXL w połączeniu z Razor Pages do eksportowania danych do Excela. Zacznij od zainstalowania IronXL za pomocą menedżera pakietów NuGet lub wiersza poleceń Visual Studio. Następnie utwórz nowy skoroszyt i arkusz, wypełnij go danymi i wyeksportuj jako plik Excel za pomocą Razor.
Jakie kroki należy wykonać, aby skonfigurować środowisko do eksportowania danych do programu Excel przy użyciu Razor?
Aby skonfigurować środowisko, potrzebujesz programu Visual Studio i zestawu SDK .NET Core. Utwórz nowy projekt aplikacji internetowej ASP.NET Core, zainstaluj IronXL z NuGet i zmodyfikuj interfejs Razor, aby dodać funkcje eksportu.
Jak wygląda proces eksportowania danych do pliku CSV w aplikacji .NET?
Aby wyeksportować dane jako plik CSV przy użyciu IronXL, zmodyfikuj kod strony Razor tak, aby zwracała plik w formacie „text/csv”. Wymaga to użycia IronXL do obsługi danych arkusza oraz określenia formatu CSV jako formatu wyjściowego.
Czy mogę formatować arkusze kalkulacyjne Excel podczas eksportowania z Razor Pages?
Tak, IronXL pozwala na stosowanie stylów w arkuszach kalkulacyjnych Excel podczas eksportowania z Razor Pages. Można dostosować czcionki, kolory i inne elementy formatowania, aby poprawić prezentację danych.
Czy można używać IronXL w projektach niekomercyjnych?
IronXL jest dostępny bezpłatnie do niekomercyjnych celów programistycznych. Można również skorzystać z bezpłatnej wersji próbnej do testowania w środowiskach produkcyjnych, a szczegółowe plany cenowe są dostępne do użytku komercyjnego.
W jaki sposób IronXL upraszcza zadania związane z tworzeniem stron internetowych z wykorzystaniem plików Excel i CSV?
IronXL upraszcza tworzenie stron internetowych, udostępniając potężny interfejs API do generowania i edycji plików Excel i CSV bezpośrednio z Razor Pages. Eliminuje to potrzebę korzystania z Interop, dzięki czemu eksport danych jest bardziej wydajny i łatwiejszy do wdrożenia.
Dlaczego programiści mieliby wybrać Razor i IronXL do zadań związanych z eksportem danych?
Programiści wybierają Razor i IronXL ze względu na ich łatwość obsługi, elastyczność i zaawansowane funkcje. Umożliwiają one płynną integrację funkcji eksportu danych z aplikacjami internetowymi, pozwalając na tworzenie dynamicznych, opartych na danych treści, które można bez wysiłku udostępniać.




