ASP.NET Extensions for ClosedXML
To install ClosedXML.Extensions.AspNet, run the following command in the Package Manager Console
PM> Install-Package ClosedXML.Extensions.AspNet
There are two extension methods: one for HttpResponse and one for XLWorkbook. Both deliver the relevant ClosedXML workbook to the response stream.
using (var wb = GenerateClosedXMLWorkbook())
{
    var response = this.Response;
    response.DeliverWorkbook(wb, "generatedFile.xlsx");
    
    // or specify the content type:
    response.DeliverWorkbook(wb, "generatedFile.xlsx", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
}or
using (var wb = GenerateClosedXMLWorkbook())
{
    wb.DeliverToHttpResponse(this.Response, "generatedFile.xlsx");
    
    // or specify the content type:
    wb.DeliverToHttpResponse(this.Response, "generatedFile.xlsx", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
}