Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用c#传输多个文件?_C#_Sockets_Tcp_File Transfer - Fatal编程技术网

如何使用c#传输多个文件?

如何使用c#传输多个文件?,c#,sockets,tcp,file-transfer,C#,Sockets,Tcp,File Transfer,我想将文件夹从客户端传输到服务器。我发现这个代码传输文件和它的工作良好 但是我想传输多个文件,因为只传输了1个文件,所以出现了一个错误。我修改了代码并使用FolderBrowseDialogue代替OpenFileDialogue。我使用了以下代码来传输文件 foreach (string f in Directory.GetFiles(dir)) { FTClientCode.SendFile(f); } 我发现了问题。问题出现在服务器端,当时backgroundWorker1正在调

我想将文件夹从客户端传输到服务器。我发现这个代码传输文件和它的工作良好

但是我想传输多个文件,因为只传输了1个文件,所以出现了一个错误。我修改了代码并使用FolderBrowseDialogue代替OpenFileDialogue。我使用了以下代码来传输文件

foreach (string f in Directory.GetFiles(dir))
{
    FTClientCode.SendFile(f);
}

我发现了问题。问题出现在服务器端,当时backgroundWorker1正在调用StartServer(),所以服务器只启动了一次,这个函数再也没有被调用过,所以我在StartServer()的末尾写了StartServer()功能,以便在获取文件后,服务器再次启动并等待接收下一个文件。这是不好的,因为函数一次又一次地调用自己,并且没有终点。但我的要求是只接收文件,不做其他事情,所以我使用了它