У меня странная проблема. Я делаю приложение C # MVC, которое генерирует PDF-файлы и предлагает их для загрузки с помощью кнопки загрузки.
public ActionResult Download()
{
string url = (string)TempData["url"];
byte[] thePdf = System.IO.File.ReadAllBytes(url);
return File(thePdf, "application/pdf");
}
Внезапно я не могу должным образом преобразовать файл PDF в байт [], либо с помощью File.ReadAllBytes (), либо с помощью потока памяти (или любого другого потока).
Когда я использовал поток памяти, я получал исключение InvalidOperationException как для ReadTimeOut, так и для WriteTimeOut.
Я реализовал код, упомянутый выше, в новом проекте C # MVC, и там все работало нормально. Так что проблема должна быть в проекте, в котором я работаю.
EDIT:
Когда я считываю байты, он возвращает полный байтовый массив, но когда он загружается и конвертируется обратно в PDF-файл, PDF-файл пуст (все страницы существуют) и имя представляет собой набор странных символов.
В новом проекте это просто обычный PDF, как и должно быть.
Кто-нибудь знает, что это может быть и как я могу это исправить?
(Я могу уточнить больше, если это необходимо)