小编Dal*_*uch的帖子

调用System.Net.WebClient.UploadFileAsync时出现.NET错误

我正在使用System.Net.WebClient该类,我正在尝试使用UploadFileAsync方法上传文件.我使用的是Visual Studio 2010,我的所有项目都设置为使用.NET 4.0标准运行时,而不是客户端库.

下面是我正在使用的代码的一小部分.大约90%的时间我收到以下错误:

无法将类型为"System.ComponentModel.AsyncOperation"的对象强制转换为"UploadBitsState".

Stack Trace:
 at System.Net.WebClient.UploadFileAsyncWriteCallback(Byte[] returnBytes, Exception exception, Object state)
 at System.Net.WebClient.UploadFileAsync(Uri address, String method, String fileName,   Object userToken)
 at FileUpload._StartUpload()
Run Code Online (Sandbox Code Playgroud)

我试图上传到的FTP服务器是我组织内部的,但是一个运行IPSwitches WS-FTP,另一个运行IIS 6.0 FTP站点,我遇到了两个服务器的相同问题.

对于有类似问题的其他人,我已经搜索过高低,但无济于事.

发生异常的实际行是_Client.UploadFileAsync方法调用.

private void _StartUpload()
{
    try
    {
        _Client = new WebClient
        {
            Credentials = _Credentials
        };
        _Client.UploadProgressChanged += ProgressChanged;
        _Client.UploadFileCompleted += UploadCompleted;
        _Client.UploadFileAsync(FileBeingUploaded, "STOR", _LocalFile, null);
    }
    catch (Exception exception)
    {
        // Methods calls removed for brevity
    }
}

private void UploadCompleted(Object sender, UploadFileCompletedEventArgs e) …
Run Code Online (Sandbox Code Playgroud)

.net webclient exception

6
推荐指数
1
解决办法
2468
查看次数

标签 统计

.net ×1

exception ×1

webclient ×1