Прикрепите несколько файлов FTP по электронной почте, используя FtpWebRequest, используя vb.net - PullRequest
0 голосов
/ 01 июля 2019
 Dim taskResults As IList(Of Task) = New List(Of Task)()           
        Try
            For Each row As DataRow In filesTable.Rows
                fileName = row("Name")
                Dim request As FtpWebRequest = WebRequest.Create(Convert.ToString(ftp & ftpFolder) & fileName)
                request.Method = WebRequestMethods.Ftp.DownloadFile

                'Enter FTP Server credentials.
                request.Credentials = New NetworkCredential("ksmusic", "Kevin2009")
                request.UsePassive = True
                request.UseBinary = True
                request.KeepAlive = True

                Try
                    taskResults.Add(Task.Factory.StartNew(Function()
                                                              Dim response As FtpWebResponse = request.GetResponse()
                                                              contentStream = response.GetResponseStream()
                                                              mailMessage.Attachments.Add(New Attachment(contentStream, fileName))
                                                          End Function))
                Catch ex As Exception
                    Dim err As String = ex.Message
                End Try
            Next row

Я получаю ошибку ниже: - Невозможно повторно вызвать BeginGetRequestStream / BeginGetResponse, когда предыдущий вызов все еще выполняется. и иногда я получаю: - Удаленный сервер возвратил ошибку: (530) Не вошел в систему.

Пожалуйста, дайте мне знать, как управлять параллелизмом.

Спасибо

...