将字节流从模型传递到视图,以便用户可以保存

时间:2009-04-08 20:20:37

标签: c# asp.net-mvc

我有一个asp.net MVC应用程序,它调用另一个服务来生成pdf。我希望用户能够单击我的视图中的链接并从浏览器中获取“另存为...”对话框以保存pdf。

第三方服务的调用是在使用WebClient的模型中进行的。

如何将WebClient中的数据调用到View并输出到浏览器以便保存?

2 个答案:

答案 0 :(得分:3)

试试这个

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

当然,bytearray来自您需要制作的WebRequest来获取文件

答案 1 :(得分:3)

更好的是,使用我们的文件助手之一。

public ActionResult ShowPdf() {
  byte[] byteArray = GetBytes();
  return File(byteArray, "application/pdf");
}