新增 ToExcel 扩展方法支持导出多表到 Excel

新增 ToExcel 扩展方法,可将 IEnumerable<DataTable> 自动填充到 Excel 文件,支持设置密码和自定义列。每个 DataTable 通过 CreateWorksheet 创建工作表,最终通过 SaveAsStream 返回包含 Excel 内容的内存流。
This commit is contained in:
懒得勤快
2026-08-20 16:51:10 +08:00
parent e253c6c551
commit bd814a2257
+18
View File
@@ -48,6 +48,24 @@ public static class ExcelExtension
return SaveAsStream(pkg, password);
}
/// <summary>
/// 将内存表自动填充到Excel
/// </summary>
/// <param name="sheetTables">sheet名和内存表的映射</param>
/// <param name="password">密码</param>
/// <param name="settings">列设置</param>
/// <returns>内存流</returns>
public static PooledMemoryStream ToExcel(this IEnumerable<DataTable> sheetTables, string password = null, ColumnSettings settings = null)
{
using var pkg = new ExcelPackage();
foreach (var pair in sheetTables)
{
CreateWorksheet(pkg, pair, settings);
}
return SaveAsStream(pkg, password);
}
/// <summary>
/// 将内存表自动填充到Excel
/// </summary>