在WebClient UploadFileAsync FTP上传后获取更多结果信息

时间:2011-04-27 22:04:50

标签: vb.net file-upload ftp webclient

在我的vb.net代码使用WebClient进行FTP UploadFileAsync上传后,调用此子例程:

Sub FtpCompleted(ByVal sender As Object, ByVal e As Net.UploadFileCompletedEventArgs)
End Sub

上传工作,子程序被调用...但我会在其中放入什么代码...获取如下信息:

The name of the source-file that just completed?
The name of the destination-file?
The number of bytes transferred?
An error or success number?
An error or success string?
The time the upload started?

我可以使用哪些信息 IS ...当我拥有的是SENDER和E变量时?

1 个答案:

答案 0 :(得分:0)

对于源文件,当您启动异步过程时,您可以指定用户令牌对象并在e.userstate对象中引用它。它只是一个简单的物体,所以你可以放入任何你想要的东西来跟踪出去的东西。这至少是我的理解,我从未使用过e.userstate对象。

至于错误或成功,无论何时引用异步完成事件,在引用e的任何其他属性之前,应始终首先检查e.error是否为空。如果e.error什么都没有,并且e.cancelled什么都没有,那么转移是成功的。如果e.error什么都不是,那么探测e.error以找出错误。如果e.error是某种东西,请不要引用e.result,因为这将引发异常。

另外,发件人objct是否指的是您用来发送文件的原始对象?进行Ctype转换,您应该能够获得有关发送内容的详细信息。