Provide a way to export data to Excel
Provide a way to export data to Excel
Check out article with description of exporter :-)
Export to file
Person[] people = new[]
{
new Person
{
DateOfBirth = new DateTime(1983, 12, 26),
FirstName = "John",
LastName = "Smith"
},
new Person
{
DateOfBirth = new DateTime(1986, 10, 23),
FirstName = "Hipolito",
LastName = "Hudson"
}
};
NpoiExcelDataExporter exporter = new NpoiExcelDataExporter();
exporter.ExportToFile(people, @"D:\Sample.xlsx");
With custom properties
//Prepare data
Person[] people = new[]
{
new Person
{
DateOfBirth = new DateTime(1983, 12, 26),
FirstName = "Jon",
LastName = "Snow"
},
new Person
{
DateOfBirth = new DateTime(1986, 10, 23),
FirstName = "Daenerys",
LastName = "Targaryen"
}
};
//Prepare metadata
ModelMetadataBuilder
personMetadataBuilder = new ModelMetadataBuilder ();
personMetadataBuilder.Property("Name")
.HasProvider(x => x.FirstName + " " + x.LastName);
personMetadataBuilder.Property(x => x.DateOfBirth)
.HasColumnName("Birthday")
.HasProvider(x => x.DateOfBirth?.ToString("MMMM dd"));
//Export
ExportSheetInfo peopleSheet = new ExportSheetInfo
{
Header = "People",
Items = people,
Metadata = personMetadataBuilder.Metadata
};
ExportSheetInfo[] sheets = new[] { peopleSheet };
NpoiExcelDataExporter exporter = new NpoiExcelDataExporter();
using (MemoryStream stream = new MemoryStream())
{
exporter.ExportToStream(sheets, stream);
}