C# 从asp Web应用程序下载文件

C# 从asp Web应用程序下载文件,c#,asp.net,.net,C#,Asp.net,.net,我正在使用asp Web应用程序,我希望用户能够从页面下载文件。因此,当用户单击“下载模板文件”按钮时,它将开始向计算机下载文件副本。我该怎么做呢?若要在单击按钮时直接将文件下载到计算机,只需在单击按钮事件时编写此代码即可 string filename = "~/File/yourFolder/"+ FileName; string path = MapPath(filename); byte[] bts = System.IO.File.ReadAllBytes(path); Respons

我正在使用asp Web应用程序,我希望用户能够从页面下载文件。因此,当用户单击“下载模板文件”按钮时,它将开始向计算机下载文件副本。我该怎么做呢?

若要在单击按钮时直接将文件下载到计算机,只需在单击按钮事件时编写此代码即可

string filename = "~/File/yourFolder/"+ FileName;
string path = MapPath(filename);
byte[] bts = System.IO.File.ReadAllBytes(path);
Response.Clear();
Response.ClearHeaders();
Response.AddHeader("Content-Type", "Application/octet-stream");
Response.AddHeader("Content-Length", bts.Length.ToString());
Response.AddHeader("Content-Disposition", "attachment; filename=" + filename);
Response.BinaryWrite(bts);
Response.Flush();
Response.End();
否则,如果您有超链接,只需在导航url中提供文件路径

用户必须下载一个模板文件

正如您在评论中提到的,用户只需要下载文件。因此,您必须已经拥有放置在服务器上的模板文件的url。像

www.testwebsite.com/templatefile.xls


在网站中添加一个简单的链接按钮,并在href/Navigate URL中添加模板URL。无论用户何时单击该文件,该文件都会自动下载。

这个问题不太清楚。我认为你可以简单地通过超链接来实现这一点。。。或者你是说别的什么?asp.net。用户必须下载一个模板文件。填写它,然后上传到另一个文件夹。Excel文件中的数据显示在屏幕上,然后用户可以将数据上载到数据库。这样做的原因是不允许用户添加与模板不相似的excel文件。