Передача потока байтов из модели в представление, чтобы пользователь мог сохранить его - PullRequest
0 голосов
/ 09 апреля 2009

У меня есть приложение asp.net MVC, которое вызывает другой сервис для создания PDF. Я хочу, чтобы пользователь мог щелкнуть ссылку в моем представлении и получить в браузере диалоговое окно «Сохранить как ...», чтобы сохранить PDF.

Вызов в стороннюю службу выполняется в модели с использованием WebClient.

Как получить данные из WebClient, вызвать их и просмотреть в браузере, чтобы их можно было сохранить?

Ответы [ 2 ]

3 голосов
/ 09 апреля 2009

Еще лучше, воспользуйтесь одним из наших файловых помощников.

public ActionResult ShowPdf() {
  byte[] byteArray = GetBytes();
  return File(byteArray, "application/pdf");
}
3 голосов
/ 09 апреля 2009

Попробуйте это

Response.AddHeader("content-disposition", fileName);    
Response.ContentType = "application/pdf";
Response.BinaryWrite(byteArray);

И, конечно, bytearray приходит из WebRequest, который вам нужно сделать, чтобы получить файл

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...