Я пытаюсь добавить кнопку экспорта в Excel в моем приложении Blazor Server. До сих пор после прочесывания inte rnet это то, что я сделал.
Моя кнопка
<div class="row text-right">
<div class="col-12 p-3">
<button class="btn btn-outline-success" @onclick="@(() =>DownloadExcel(formValues.Region, formValues.startDate, formValues.endDate))">
Export to Excel
<i class="fa fa-file-excel" aria-hidden="true"></i>
</button>
</div>
</div>
Мой метод на моей странице .razor
public FileResult DownloadExcel(string Region, DateTime StartDate, DateTime EndDate)
{
FileResult ExcelFile = searchService.ExportToExcel(Region, StartDate, EndDate);
return ExcelFile;
}
И Наконец, мои логики c в моем сервисе
public FileResult ExportToExcel(string Region, DateTime StartDate, DateTime EndDate)
{
var queryable = context.AuditCardPinrecords.Where(s => Region == s.RegionRecordId)
.Where(s => s.AuditComplete == true)
.Where(s => s.DateTime >= StartDate && s.DateTime <= EndDate).AsQueryable();
var stream = new MemoryStream();
using (var package = new ExcelPackage(stream))
{
var workSheet = package.Workbook.Worksheets.Add("Sheet1");
workSheet.Cells.LoadFromCollection(queryable, true);
package.Save();
}
string excelName = $"AuditPinRecords-{DateTime.Now.ToString("yyyyMMddHHmmssfff")}.xlsx";
return File(stream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", excelName);
}
Мой ожидаемый результат - загрузка файла excel. К сожалению, ничего не происходит при нажатии кнопки. Любой совет будет принята с благодарностью. Спасибо!