наш исторический код выглядел так, как показано ниже
Код: Выделить всё
byte[] fileBytes = System.IO.File.ReadAllBytes("prefilled data, Header Data 1, Header Data 2\n abc");
return File(fileBytes, "text/csv", Path.GetFileName(data.FilePath));
Код: Выделить всё
byte[] csvBytes = new UTF8Encoding(true).GetBytes("prefilled data, Header Data 1, Header Data 2\n رخصة تجارية");
return File(csvBytes, "text/tsv", fileName.Replace(".csv", ".tsv"));

после некоторого поиска в Google и помощи чатаGPT я узнал что Excel не распознает файл как utf-8, и мне следует использовать спецификацию, чтобы помочь Excel распознать файл как UTF-8.
после этого я выполнил приведенный ниже код с помощью чатаGPT.
Код: Выделить всё
byte[] utf8Bom = new UTF8Encoding(true).GetPreamble(); // `true` to add BOM
byte[] csvBytes = new UTF8Encoding().GetBytes("prefilled data, Header Data 1, Header Data 2\n رخصة تجارية");
byte[] resultBytes = new byte[utf8Bom.Length + csvBytes.Length];
Buffer.BlockCopy(utf8Bom, 0, resultBytes, 0, utf8Bom.Length);
Buffer.BlockCopy(csvBytes, 0, resultBytes, utf8Bom.Length, csvBytes.Length);
return File(resultBytes, "text/csv", fileName);
как это исправить.
Подробнее здесь: https://stackoverflow.com/questions/790 ... sv-c-sharp
Мобильная версия