[英]Getting “An exception occurred during a WebClient request” while download the large file using webclient
[英]'An exception occurred during a WebClient request" while using C# ASP.NET
所以,我已经为我的程序构建了一个自动更新程序。
这里运行的代码是:
new WebClient().DownloadFile("XXXX", checkingfolder.SelectedPath);
XXX是我的网络服务器,在verio中作为VPS服务器运行,具有最新的IIS和所有内容。
当用户点击下载按钮时,它会显示:
'An exception occurred during a WebClient request.
问题是,我甚至不知道为什么 - 我只是尝试捕获。
这里的任何人都知道为什么会这样吗?
感谢你给我的任何帮助,你不知道你在这里帮助了我多少 - 再次感谢!
我可以重现这个如果我指定,因为似乎是在你的情况为例, 文件夹名,而不是文件名的目标。 提供文件名。
作为旁白; 如果我查看InnerException
,它告诉我该问题与文件路径有关:
using(var client = new WebClient())
{
try
{
client.DownloadFile(
"http://stackoverflow.com/questions/8033619/an-exception-occurred-durning-a-webclient-request-c-sharp-asp-net/8033687#8033687",
@"j:\MyPath");
}
catch (Exception ex)
{
while (ex != null)
{
Console.WriteLine(ex.Message);
ex = ex.InnerException;
}
}
}
这使:
An exception occurred during a WebClient request.
Access to the path 'j:\MyPath' is denied.
如果我将其更改为文件 ,它可以正常工作:
client.DownloadFile(
"http://stackoverflow.com/questions/8033619/an-exception-occurred-durning-a-webclient-request-c-sharp-asp-net/8033687#8033687",
@"j:\MyPath\a.html");
有时,当另一个类或进程正在访问您刚刚下载的文件时,可能会发生此错误
如果目录不存在,它会给出异常。
例如路径是@“j:\\ Folder \\ SubFolder \\ 123.pdf和SubFolder不存在,它会抛出异常。
我在尝试下载文件时遇到此错误,其中生成的下载文件路径将长于某个任意限制
将下载的文件的路径名更改为250个字符后,问题就消失了
除了其他答案之外,请注意如果客户端进程没有创建输出文件所需的权限,也可能发生相同的WebException 。
我建议你采取以下策略:
希望能帮助到你 :-)
如果目录不存在,则此错误消息显示为“WebClient请求期间发生异常”,因为Web客户端找不到用于存储下载文件的文件夹。
希望能帮助到你-:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.