KORZYSTANIE Z IRONXL

Jak przeglądać Excel w ASP.NET

Curtis Chau
Curtis Chau
Updated: 21 kwietnia 2026

Ten obszerny samouczek pokaże, jak zbudować przeglądarkę plików Excel przy użyciu ASP.NET MVC i IronXL. Ta przeglądarka umożliwi użytkownikom wyświetlanie, edycję i poruszanie się po plikach Excel bezpośrednio ze strony internetowej.

Czym jest IronXL?

IronXL to potężna biblioteka .NET, która zapewnia mnóstwo funkcji związanych z operacjami w programie Excel. Oferuje uproszczony interfejs API, który pozwala programistom .NET na tworzenie, edycję i odczyt dokumentów Excel w różnych formatach plików, w tym XLS, XLSX, CSV i innych.

Dzięki IronXL możesz odczytywać pliki Excel, wyodrębniać dane, dodawać lub edytować arkusze, tworzyć lub modyfikować wiersze i kolumny, stosować formuły, zapisywać zmiany i wiele więcej. Wszystkie te operacje można wykonać bez konieczności instalowania programu Microsoft Excel na komputerze.

IronXL obsługuje obrazy, stylizację, formatowanie warunkowe i inne złożone funkcje programu Excel, co czyni go kompleksowym rozwiązaniem do operacji .NET w programie Excel. Idealnie nadaje się do obsługi wymagań dotyczących źródeł danych i arkuszy kalkulacyjnych w aplikacjach ASP.NET MVC. Biblioteka IronXL będzie wykorzystywana do wyświetlania plików Excel w aplikacjach internetowych ASP.NET.

Wymagania wstępne

  • Podstawowa znajomość ASP.NET MVC
  • Visual Studio zainstalowane na Twoim komputerze
  • Zainstalowano bibliotekę IronXL. Instrukcję instalacji można znaleźć w oficjalnej dokumentacji.

Pierwsze kroki

Najpierw utwórzmy nowy projekt ASP.NET MVC w programie Visual Studio.

  1. Otwórz program Visual Studio.
  2. Kliknij Plik > Nowy > Projekt.
  3. W oknie nowego projektu wybierz szablon Aplikacja internetowa ASP.NET (.NET Framework).

Jak oglądać Excel w ASP.NET, Rysunek 1: Utwórz nową aplikację ASP.NET Web w Visual Studio Utwórz nową aplikację internetową ASP.NET w programie Visual Studio

  1. Nadaj projektowi nazwę ExcelViewer, wybierz lokalizację projektu i kliknij przycisk Utwórz.

Jak oglądać Excel w ASP.NET, Rysunek 2: Skonfiguruj swój projekt Skonfiguruj swój projekt

W tym artykułe skupimy się na wdrożeniu funkcji przeglądarki plików Excel w tej aplikacji ASP.NET MVC.

Dodawanie IronXL do projektu

Aby obsługiwać formaty plików Excel (takie jak .xls, .xlsx i .csv), IronXL oferuje kompleksowe funkcje do ładowania dokumentów Excel, odczytu, zapisu, a nawet modyfikacji danych Excel. Obsługuje formuły, obrazy, formatowanie i wiele więcej.

  1. Kliknij prawym przyciskiem myszy swój projekt w Eksploratorze rozwiązań i przejdź do opcji Zarządzaj pakietami NuGet.
  2. W menedżerze pakietów NuGet wyszukaj IronXL.Excel.
  3. Kliknij przycisk "Zainstaluj", aby dodać bibliotekę do projektu.

Jak oglądać Excel w ASP.NET, Rysunek 3: Wyszukaj i zainstaluj pakiet IronXL w interfejsie NuGet Package Manager Wyszukaj i zainstaluj pakiet IronXL w interfejsie użytkownika NuGet Package Manager

Można również zainstalować IronXL za pomocą konsoli menedżera pakietów, używając następującego polecenia:

PM > Install-Package IronXL.Excel

Jak oglądać Excel w ASP.NET, Rysunek 4: Zainstaluj pakiet IronXL z konsoli menedżera pakietów Zainstaluj pakiet IronXL z konsoli menedżera pakietów

Teraz, gdy IronXL jest już zainstalowany, przejdźmy do następnego kroku.

Tworzenie modeli

ExcelModel

Pierwszym krokiem jest utworzenie modelu danych w programie Excel. Klasa ExcelModel będzie reprezentować pojedynczy arkusz Excel i będzie zawierać nazwę arkusza oraz dane obecne w arkuszu Excel.

namespace Excel_File_Viewer_IronXl.Models
{
    public class ExcelModel
    {
        public string SheetName { get; set; }
        
        // Data is a list of string arrays, each array represents a row in the sheet.
        public List<string[]> Data { get; set; }
    }
}

ExcelModel jest zdefiniowany z dwiema właściwościami, SheetName i Data. SheetName to prosty ciąg znaków do przechowywania nazwy każdego arkusza Excel. Data to Lista tablic ciągów znaków do przechowywania danych każdego wiersza w arkuszu Excel.

ExcelViewModel

Następnie utwórzmy ExcelViewModel. Ten model jest opakowaniem zawierającym plik, wiadomość i listę ExcelModel, które reprezentują dane ze wszystkich arkuszy w pliku.

using Microsoft.AspNetCore.Http;
using System.Collections.Generic;

namespace Excel_File_Viewer_IronXl.Models
{
    public class ExcelViewModel
    {
        public IFormFile File { get; set; }  // For uploading Excel file
        public string Message { get; set; }  // Message for storing success/error messages
        public List<ExcelModel> ExcelData { get; set; }  // List to store data from all sheets
    }
}

Ta klasa będzie używana jako model widoku. Posiada właściwość IFormFile do przesyłania plików, ciąg Message do wyświetlania wszelkich komunikatów oraz List<ExcelModel> do przechowywania pobranych danych z Excela.

5. Utwórz ExcelController do załadowania plików Excel w celu ekstrakcji danych

Następnie utwórz nowy ExcelController. To właśnie tutaj dzieje się magia! Pliki Excel są ładowane za pomocą funkcji IronXL WorkBook.Load, przeglądając arkusze, wyodrębniając dane i dodając je do ExcelViewModel.

using Excel_File_Viewer_IronXl.Models;
using IronXL;
using System.Collections.Generic;
using System.Web.Mvc;
using System;
using System.Linq;

public class ExcelController : Controller
{
    // GET: Excel
    public ActionResult Index()
    {
        var model = new ExcelViewModel();

        // Define the file path for the Excel file
        string filePath = Server.MapPath("~/App_Data/Test.xlsx"); 

        // List to store data for each sheet
        List<ExcelModel> data = new List<ExcelModel>();

        try
        {
            // Load workbook directly from a file path
            var workbook = WorkBook.Load(filePath);
            
            // Loop through all worksheets in the workbook
            foreach (var worksheet in workbook.WorkSheets)
            {
                // Add each worksheet's name and data to the data list
                data.Add(new ExcelModel
                {
                    SheetName = worksheet.Name,
                    Data = worksheet.Rows.Select(r => r.ToArray().Select(c => c.Value.ToString()).ToArray()).ToList()
                });
            }

            model.ExcelData = data;
            model.Message = "File processed successfully!";
        }
        catch (Exception ex)
        {
            model.Message = $"Error occurred while processing file: {ex.Message}";
        }

        return View(model);
    }
}

Tutaj zainicjuj ExcelViewModel, a następnie załaduj WorkBook za pomocą IronXL, przeglądaj każdy WorkSheet, a dla każdego WorkSheet, tworzymy ExcelModel z nazwą i danymi z arkusza. ExcelModel jest następnie dodawany do listy ExcelData w ExcelViewModel.

Dane z poniższego pliku Excel zostaną załadowane i wyświetlone:

Jak oglądać Excel w ASP.NET, Rysunek 5: Przykładowy plik Excel Przykładowy plik Excel

6. Utwórz widok

W katalogu Views/Excel utwórz nowy plik HTML Index.cshtml, aby wyświetlić dane z Excela. Następnie użyj nav-tabs Bootstrap do reprezentowania każdego arkusza w pliku Excel. Każdy arkusz będzie osobną kartą, a treść karty to dane arkusza.

@model Excel_File_Viewer_IronXl.Models.ExcelViewModel

@{
    ViewBag.Title = "Index";
}

<h2>Excel File Viewer</h2>

@if (Model.ExcelData != null)
{
    <ul class="nav nav-tabs" id="myTab" role="tablist">
        @for (int i = 0; i < Model.ExcelData.Count; i++)
        {
            <li class="nav-item">
                <a class="nav-link @(i == 0 ? "active" : "")" id="tab-@i" data-toggle="tab" href="#content-@i" role="tab" aria-controls="content-@i" aria-selected="@(i == 0)">
                    @Model.ExcelData[i].SheetName
                </a>
            </li>
        }
    </ul>
    <div class="tab-content" id="myTabContent">
        @for (int i = 0; i < Model.ExcelData.Count; i++)
        {
            <div class="tab-pane fade @(i == 0 ? "show active" : "")" id="content-@i" role="tabpanel" aria-labelledby="tab-@i">
                <table class="table table-bordered">
                    @foreach (var row in Model.ExcelData[i].Data)
                    {
                        <tr>
                            @foreach (var cell in row)
                            {
                                <td>@cell</td>
                            }
                        </tr>
                    }
                </table>
            </div>
        }
    </div>
}

W tym przykładzie kodu nav nav-tabs wygeneruje listę kart, z których każda reprezentuje arkusz z pliku Excel. Odpowiadająca treść karty wyświetli dane odpowiedniego arkusza w formacie tabeli. Po wprowadzeniu pewnych zmian dodano przycisk przeglądania, umożliwiający ręczny wybór pliku Excel.

Uruchamianie programu

Po wykonaniu wszystkich kroków i prawidłowym skonfigurowaniu projektu nadszedł czas, aby go uruchomić. Powinna pojawić się strona internetowa z zakładkami o nazwach odpowiadających nazwom arkuszy w pliku Excel. Kliknięcie na zakładkę spowoduje wyświetlenie danych z danego arkusza w formie tabeli.

Jak oglądać Excel w ASP.NET, Rysunek 6: Przeglądarka Excel Przeglądarka Excel

Wnioski

Właśnie stworzyłeś przeglądarkę plików Excel dla ASP.NET przy użyciu IronXL! Ta potężna biblioteka umożliwia użytkownikom pracę z plikami Excel w bardziej wydajny i łatwiejszy w zarządzaniu sposób. Dzięki IronXL praca z plikami Excel w środowisku .NET nigdy nie była łatwiejsza.

IronXL oferuje bezpłatną wersję próbną, która pozwala na eksplorację i zrozumienie jego ogromnych funkcjonalności bez jakichkolwiek kosztów początkowych. Po przetestowaniu i uznaniu za idealne rozwiązanie dla Twoich potrzeb, licencja zaczyna się od $999.

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.

Czytaj więcej

Powiązane artykuły