使用VB.Net上传多个文件

时间:2009-11-26 15:15:13

标签: vb.net winforms webclient

我需要在winforms应用程序中上传多个文件。到目前为止,我一直在使用webclient,虽然这工作正常,但我想知道是否有更好的方法来做到这一点。 webclient是否为每个请求建立新连接,或者上传之间的连接是否仍然存在?

Dim Ftpclient As New System.Net.WebClient()
Ftpclient.Credentials = New System.Net.NetworkCredential(username, password)

Dim Files As New Dictionary(Of String, String)

''//Fill dictionary with items for upload here

For Each RemoteFile As String In Files.Keys
    Ftpclient.UploadFile(RemoteFile, Files(RemoteFile))
Next

2 个答案:

答案 0 :(得分:1)

它将为每个文件创建一个新的TCP连接,因为它的工作方式是HTTP。

恕我直言,在你的场景中并不是件坏事。

答案 1 :(得分:0)

这取决于您用于上传的protocl。如果您使用的是HTTP,那么客户端将重用之前的连接(如果可以)。我不确定FTP - 我认为FTP也支持keep-alive。

在任何情况下,如果您担心性能,您应该使用Wireshark来查看连接使用情况是如何完成的。它是每次都创建一个新的连接吗?