C# WebClient->Download文件下载不启动



我绝对是C#编程的初学者,有一个愚蠢的问题。我只喜欢下载文件,这些文件与WebClient.DownloadFile一起位于临时目录中。代码为(操作从单击页面上两个按钮之一开始):

[HttpPost]
[MultiButton(MatchFormKey = "action", MatchFormValue = "ABC")]
public ActionResult ABC(TestFormModel model)
{
  string fileName = model.resultLink;
  try
     {
       string tempPath = System.IO.Path.GetTempPath();
       System.IO.Directory.SetCurrentDirectory(tempPath);
       fileName = System.IO.Path.Combine(tempPath, fileName);
       Uri uri = new Uri(fileName);
       WebClient webClient = new WebClient();
       webClient.DownloadFile(uri, "FFF");                    
     }
  catch (Exception ex)
     { ... }                  
  return View(); 
}

现在我期望(阅读文档中的"将具有指定 URI 的资源下载到本地文件")从浏览器下载对话框将弹出。但什么也没发生。没有例外,没有下载对话框。我的代码有什么问题?

谢谢!

在这种情况下,"本地文件"是服务器上的文件(Web 服务器的本地文件),而不是最终用户的本地文件。

这里的想法是,一旦您将资源从一个位置下载到本地服务器,您就可以将用户重定向到该下载的文件,如果他们的浏览器设置为这样做,将出现一个对话框,允许他们保存文件。

从外观上看,您正在将文件从本地服务器下载本地服务器。

如果该文件已存在于本地服务器上,您只需在操作方法结束时重定向用户,他们的浏览器将处理其余的工作。

return Redirect(fileUrl);

最新更新