var result = await profileManager.GetCSVAsByteResults(searchOptions); // return array of bytes
if (result == null || result.Length == 0)
{
return NotFound();
}
var finalResult = Encoding.UTF8.GetPreamble().Concat(result).ToArray();
return File(finalResult, "text/csv", $"UserProfiles.{DateTime.Now:yyyy.MM.dd.HH.mm.ss}.csv");
GetCSVAsByteResults method
public static byte[] GetCSVAsByteResults<T>(IEnumerable<T> data)
{
using (var memory = new MemoryStream())
using (var writer = new StreamWriter(memory, new UTF8Encoding(true)))
using (var csvWriter = new CsvWriter(writer))
{
csvWriter.WriteRecords<T>(data);
writer.Flush();
var result = memory.ToArray();
return result;
}
}
the CSV file contains Arabic letters but they are displayed as symbols I tried what I find while searching on the internet and still have the same problem.