survey-webapp/SurveyBackend/SurveyBackend.API/Controllers/ExportController.cs

26 lines
No EOL
762 B
C#

using Microsoft.AspNetCore.Mvc;
using SurveyLib.Tools.Tools;
namespace SurveyBackend.Controllers;
[ApiController]
[Route("api/export")]
public class ExportController
{
private readonly TableExporter _tableExporter;
public ExportController(TableExporter tableExporter)
{
_tableExporter = tableExporter;
}
[HttpGet("excel/{surveyId:int}")]
public async Task<IActionResult> ExportSurveyById(int surveyId)
{
var fileBytes = await _tableExporter.ExportDataBySurveyIdAsync(surveyId);
return new FileContentResult(fileBytes, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
{
FileDownloadName = $"survey_{surveyId}_{DateTime.UtcNow:yyyyMMdd_HHmmss}.xlsx"
};
}
}