我已经编写了一段用于从服务器下载文件的代码。所以当我下载它时,文件会被正确下载。但是当我打开文档时,它会显示错误。
无法加载特定文档。
同时在调试时我得到错误。
'https:/NVMBD1BKH150V02.IN.RIL.COM/MWSiteSurveyDoc/I-KA-ANKL-ENB-0012_C2/180.jpg'不是有效的虚拟路径。
当我在浏览器中打开URL时,文件会正确打开。
以下是我的代码
protected void lnkDownload_Click(object sender, EventArgs e)
{
try
{
string FulfilePath = (sender as LinkButton).CommandArgument;
string[] filePath = FulfilePath.Split('\\');
string path = @"" + ConfigurationManager.AppSettings["NASSServerPath_MW_Feasibility_Download"].ToString() + "/" + filePath[7] + "/" + filePath[8];
// Response.ContentType = ContentType;
Response.ContentType = ContentType;
Response.AppendHeader("Content-Disposition", "attachment; filename=" + Path.GetFileName(path));
Response.TransmitFile(path);
Response.End();
}
catch (Exception ex)
{
// objCom.ErrorLog(ex.GetType().ToString(), ex.Message, "Download Files", Session["UserName"].ToString());
}
}
答案 0 :(得分:1)
HttpResponse.Transmit将服务器物理路径作为参数提供给文件。似乎你试图传递远程URI,而且还有一个拼写错误: http:// 前缀中缺少斜杠。
您需要提供TransmitFile方法的本地路径或将请求重定向到URI