Чтобы экспортировать файл Excel на C# с помощью ASP.NET и библиотеки ExcelPackage, выполните следующие действия:
-
Установите пакет ExcelPackage NuGet. Откройте консоль диспетчера пакетов NuGet в Visual Studio и выполните следующую команду, чтобы установить библиотеку ExcelPackage:
Install-Package ExcelPackage -
Импортируйте необходимые пространства имен: добавьте следующие инструкции using в начало файла C#:
using OfficeOpenXml; using System.IO; -
Создание нового пакета и листа Excel. Создайте экземпляр объекта ExcelPackage и создайте новый лист.
ExcelPackage.LicenseContext = LicenseContext.NonCommercial; // Set the license context ExcelPackage excelPackage = new ExcelPackage(); ExcelWorksheet worksheet = excelPackage.Workbook.Worksheets.Add("Sheet1"); -
Заполнение листа данными. Добавляйте данные на лист, обращаясь к отдельным ячейкам с помощью индексов строк и столбцов.
worksheet.Cells["A1"].Value = "Column 1"; worksheet.Cells["B1"].Value = "Column 2"; worksheet.Cells["A2"].Value = "Data 1"; worksheet.Cells["B2"].Value = "Data 2"; // Add more data as needed -
Сохранение файла Excel: сохраните пакет Excel в потоке или файле.
- Сохранить в ленту:
MemoryStream stream = new MemoryStream(); excelPackage.SaveAs(stream); stream.Position = 0; - Сохранить в файл:
FileInfo fileInfo = new FileInfo("path/to/file.xlsx"); excelPackage.SaveAs(fileInfo);
- Сохранить в ленту:
-
Предоставьте файл Excel для загрузки. В веб-приложении ASP.NET вы можете отправить файл Excel клиенту для загрузки, установив соответствующие заголовки ответа.
- Для скачивания из потока:
Response.Clear(); Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; Response.Headers.Add("content-disposition", "attachment;filename=file.xlsx"); Response.Body.Write(stream.ToArray()); Response.Body.Flush(); Response.End(); - Для скачивания из файла:
Response.Clear(); Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; Response.Headers.Add("content-disposition", "attachment;filename=file.xlsx"); Response.TransmitFile(fileInfo.FullName); Response.End();
- Для скачивания из потока:
Вот и все! Теперь вы экспортировали файл Excel на C# с помощью ASP.NET и библиотеки ExcelPackage.