我在下面使用
var inputPath = "file:" + fileName.Replace(@"\", @"/");
var uri = new Uri(inputPath);
var client = new WebClient();
client.DownloadFile(uri, downloadPath);
带有文件名的“file://*”直接在浏览器中打开。
该文件位于服务器上,并且可以在使用我的本地主机从 VS2012 中的 DEBUG 运行时访问和下载,但是当我在浏览器中键入以连接到 DEV 服务器版本时,它不会下载该文件。
应用程序池以我的名义运行,因为我无法让应用程序池在 AppPoolIdentity 下工作。我可以完全控制文件位置的文件夹路径。ANONYMOUS 和 Everyone 也是如此,以防万一所有这些都是安全问题。
由于它是一个 DEV 框,我什至完全删除了防火墙,以查看防火墙是否阻止了下载。
当我从 Chrome 浏览器和 F12 运行时,我可以看到在 DownloadFile 运行时该代码部分的状态代码为 200“OK”,因此没有错误,它只是没有保存到我的 downloadPath 位置。
请告知您是否以前看过此内容。