2009-04-21 49 views
1

我需要下载一个Access文件(Inbox.mdb)文件,当点击asp.net按钮...?
我如何做到这一点是C#/ ASP.NET。
任何帮助,将不胜感激。在C#中显示下载选项

回答

0

如果该文件只是在您的服务器上公开托管,则您不需要使用任何C#/ ASP.NET功能。

只需添加一个正常

<a href="~/Path/To/Inbox.mdb">Link</a> 

如果你必须使用一个服务器端的按钮,然后

Response.Redirect("~/Path/To/Inbox.mdb"); 

会重定向到该文件,并会导致浏览器下载。

如果它存储在其他地方(即不能公开访问),那么您需要从它在服务器上的位置进行流式传输。看看谷歌的例子,通过响应对象的流文件。

1
<!-- in your aspx file --> 
<asp:button id="btnDownload" runat="server" onclick="btnDownload_Click" text="Download Your MDB" /> 

// and then in your codebehind file 
protected void btnDownload_Click(object sender, EventArgs e) 
{ 
    string pathToYourMDB = @"c:\stuff\test.mdb"; 
    string downloadName = "YourData.mdb"; 

    Response.Clear(); 
    Response.ContentType = "application/octet-stream"; 
    Response.AddHeader("Content-Disposition", "attachment; filename=\"" + downloadName+ "\""); 
    Response.TransmitFile(pathToYourMDB); 
    Response.End(); 
}