ASP.NET MVC 3,将文件从服务器传递到客户端

问题描述:

实际上,这看起来像下载功能,允许用户确定应该存储文件的本地路径。ASP.NET MVC 3,将文件从服务器传递到客户端

整件事情是:后台程序会在服务器上生成一个数据文件,之后我想将数据文件从服务器传递到客户端。我使用FileStreamResultFileContentResult,但它不起作用。

生成一个* .csv文件,然后该文件需要传输到客户端。在控制器中,代码非常简单,就像return new FilePathResult(filePath,"text/csv");,我设置了断点,代码执行时没有任何异常,但是我没有看到任何web diaglog让用户选择保存csv文件的路径。

+1

什么是你的问题? “它无法工作”并不适合获得帮助! – Jan

+0

请告诉我们更多关于你试过的东西 –

+0

a * .csv文件已经生成,那么文件需要传输给客户端。在控制器中,代码非常简单,就像返回新的FilePathResult(filePath,“text/csv”);我设置了断点,代码执行时没有任何异常,但我没有看到任何web diaglog让用户选择保存csv文件的路径。 – user477928

使用try回报文件()

public FileResult GetFile() 
{ 
    byte[] test = { 0 }; 
    return File(test, "text/csv","TempFile.csv"); 
} 

,并用ActionLink的调用它。

@Html.ActionLink("Download File","GetFile","Home") 

谢谢你们,我改变了designe - 放置在控制器方法Web根目录(例如\文件\日\ testing.csv)下的csv文件将返回一个JSON其指向csv的位置(例如/File/Date/testing.csv),js应该得到url并重定向到/File/Date/testing.csv。

public FastJsonResult Download() 
    { 
     //generate the csv file under root path 

     //return the url point to the file 

     return JsonView(path); 
    }