.net mvc 数据库epplus导出excel
时间: 2023-05-21 22:03:26 浏览: 79
可以使用EPPlus库来导出Excel文件,以下是一个简单的示例代码:
```
using OfficeOpenXml;
using System.Data;
using System.IO;
public void ExportToExcel(DataTable dataTable, string fileName)
{
using (ExcelPackage package = new ExcelPackage())
{
ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("Sheet1");
worksheet.Cells["A1"].LoadFromDataTable(dataTable, true);
FileInfo file = new FileInfo(fileName);
package.SaveAs(file);
}
}
```
其中,`dataTable`是要导出的数据表,`fileName`是要保存的文件名。这段代码会将数据表中的数据导出到Excel文件中。
相关问题
.net mvc 数据库 epplus导出excel的控制器视图全步骤
首先,你需要在你的 .NET MVC 项目中安装 EPPlus NuGet 包。然后,你需要创建一个控制器来处理导出 Excel 的请求。在控制器中,你需要使用 EPPlus 库来创建 Excel 文件并将其保存到服务器上的指定位置。以下是一个示例控制器代码:
```csharp
using OfficeOpenXml;
using System.IO;
using System.Web.Mvc;
public class ExcelController : Controller
{
public ActionResult Export()
{
// 创建 Excel 文件
var package = new ExcelPackage();
var worksheet = package.Workbook.Worksheets.Add("Sheet1");
// 添加数据
worksheet.Cells[1, 1].Value = "姓名";
worksheet.Cells[1, 2].Value = "年龄";
worksheet.Cells[2, 1].Value = "张三";
worksheet.Cells[2, 2].Value = 20;
worksheet.Cells[3, 1].Value = "李四";
worksheet.Cells[3, 2].Value = 25;
// 保存 Excel 文件到服务器上的指定位置
var stream = new MemoryStream();
package.SaveAs(stream);
var fileName = "export.xlsx";
var contentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
var fileContent = stream.ToArray();
return File(fileContent, contentType, fileName);
}
}
```
接下来,你需要创建一个视图来呈现导出 Excel 的链接。以下是一个示例视图代码:
```html
@{
ViewBag.Title = "Export Excel";
}
<h2>Export Excel</h2>
@Html.ActionLink("导出 Excel", "Export", "Excel")
```
最后,你需要在你的应用程序中添加路由,以便能够访问导出 Excel 的控制器和视图。
.net mvc 数据库epplus导出excel控制器视图全步骤
首先,你需要在控制器中创建一个方法,该方法将从数据库中检索数据并将其存储在Excel文件中。以下是一个示例方法:
```
public ActionResult ExportToExcel()
{
var data = db.MyTable.ToList();
ExcelPackage.LicenseContext = LicenseContext.NonCommercial;
using (var package = new ExcelPackage())
{
var worksheet = package.Workbook.Worksheets.Add("My Data");
worksheet.Cells["A1"].LoadFromCollection(data, true);
for (var i = 1; i <= data.Count(); i++)
{
worksheet.Cells[i + 1, 5].Value = data[i - 1].MyColumn;
}
var stream = new MemoryStream();
package.SaveAs(stream);
var fileName = "MyData.xlsx";
var contentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
stream.Position = 0;
return File(stream, contentType, fileName);
}
}
```
在视图中,您需要创建一个链接或按钮,该链接或按钮将调用此方法。以下是一个示例链接:
```
@Html.ActionLink("Export to Excel", "ExportToExcel")
```
这将在视图中创建一个链接,当用户单击该链接时,将调用控制器中的方法,并将数据导出到Excel文件中。