ASP.NET文件下载的问题,在线急等。。

我的网站上有个语音文件下载的功能,
语音文件的路径保存在A服务器数据库中,
语音文件保存在B服务器中。
我在本地运行调试可以下载语音文件并正常播放。但网站发布到A服务器上时下载的文件却不能播放。
我的代码如下:
        //当点击下载时
        if (e.CommandName == "Download")
        {
            string path = e.CommandArgument.ToString(); //获取数据库中语音文件的路径 如:D:\record\1.wav
            string path2 = path.Substring(path.LastIndexOf(":") + 1); //截取文件路径字符串 如:record\1.wav
     //获取Web.config中语音文件的IP地址 如:\\10.100.0.1\record\1.wav
            string filename = ConfigurationManager.ConnectionStrings["record"].ToString() + path2; 
            FileInfo file = new FileInfo(filename);
            Response.Clear();
            Response.ContentType = "application/octet-stream";
            Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(path, System.Text.Encoding.UTF8));
            Response.Flush();
            Response.WriteFile(filename);
        } 

慕桂英546537
浏览 420回答 2
2回答

慕沐林林

你在数据库中存储的是绝对路径吗 string path = e.CommandArgument.ToString(); //获取数据库中语音文件的路径 如:D:\record\1.wav如果是,问题出在这。你开发机器上的程序位置和你服务器上的文件夹路径不见得就是一样的,你应该存储相对路径。“~\record\1.wav” 类似这种。 在下载的时候。转化为绝对路径下载。
打开App,查看更多内容
随时随地看视频慕课网APP