0

我的 C# Web 应用程序驻留在C驱动器上。然而,应用程序接收用户上传的文档并将它们保存在D驱动器上。

如何在D驱动器上的 Web 应用程序中的 HyperLink 控件的 NavigateUrl 属性中指定驱动器上文档的路径C

4

1 回答 1

0

在服务器端,您可以在 a 中加载文件Stream并将此对象响应为byte[]

public void Page_Load(object sender, System.EventArgs e)
{
    // create a FileStream from a path from local (D:, C:, E:, etc...)
    FileStream file = File.OpenRead(@"d:\folder\yourfile.txt");

    //Convert the stream to an array of bytes.  
    byte[] byteArray = file.ToArray();

    // Clear all content output from the buffer stream
    Response.Clear();

    // Add a HTTP header to the output stream that specifies the default filename
    // for the browser's download dialog
    Response.AddHeader("Content-Disposition", "attachment; filename=foo.txt");

    // Add a HTTP header to the output stream that contains the 
    // content length(File Size). This lets the browser know how much data is being transfered
    Response.AddHeader("Content-Length", byteArray.Length.ToString());

    // Set the HTTP MIME type of the output stream
    Response.ContentType = "application/octet-stream";

    // Write the data out to the client.
    Response.BinaryWrite(byteArray);
}
于 2013-02-04T11:28:59.900 回答