提供下载链接,而无需在服务器上创建文件

时间:2012-05-15 08:06:00

标签: c# asp.net-mvc asp.net-mvc-3 zip dotnetzip

我想创建一个文件并将其下载而不将其自身放在服务器上。

public ActionResult DownloadZip(Guid id){
    using (ZipFile zip = new ZipFile())
    {
        zip.Password = "123456!";
        // GenareteString();
        // add string to file
        // save zip

        //return zip to user
    }
    return View();
}

怎么做

我使用DotNetZip

2 个答案:

答案 0 :(得分:4)

您不使用return View(),而是使用以下内容:

return File(myMemoryStream,                           // zipped data
    System.Net.Mime.MediaTypeNames.Application.Zip,   // "application/zip"
    "default.zip");                                   // suggested download name

有一些重载可用。

Controller.File()Controller.View()辅助函数都返回从ActionResult派生的类型。

答案 1 :(得分:-3)

您需要一台服务器来为人们服务。你不能只是编写一个函数,并通过互联网将其发送给某人,而不需要任何“服务器”机制。