알고 계신 분들이 이미 많으시겠지만, 실무에서 Excel파일로 내보내기 기능을 사용할 때 굉장히 유용한 뉴겟 패키지가 있어서 소개드립니다.
IEnumerable과 같은 DataSource를 Excel파일로 export할 때 굉장히 유용합니다!
.NET 4.x ~ .NET 8까지도 폭 넓게 지원하네요.
DataTable, IEnumerable 또는 아래와 같이 Dapper 쿼리 결과를 그대로 저장할 수도 있습니다.
using (var connection = GetConnection(connectionString))
{
var rows = connection.Query(@"select 'MiniExcel' as Column1,1 as Column2 union all select 'Github',2");
MiniExcel.SaveAs(path, rows);
}
다양한 Annotation을 넣는것도 가능해서 Model Property에 Ignore, ColumnName과 같은 Annotation을 넣으면
해당 리스트를 그대로 저장하더라도 일부 항목은 무시하거나 컬럼 헤더 명칭을 바꾸는 등의 핸들링도 가능합니다.
저같은 경우 .NET 4.x, .NET6을 사용하는 사내 시스템에 적용(ClosedXML을 MiniExcel로 교체)했더니 Export 속도가 상당히 빨라지고, 메모리 사용량이 아주 낮아서 만족스럽네요.
자세한 내용은 링크를 따라가셔서 확인해보시길 바랍니다.