Передача файла из WCF в WCF - PullRequest
0 голосов
/ 09 мая 2011

У меня есть pdf на одном сервере, который мне нужно передать на другой сервер.Оба имеют опубликованные WCF.

На «обслуживающем» сервере у меня есть следующий код (спасибо, антисанитария!):

Функция GetPDF (ByVal fileName as String) как FileStream

Return File.OpenRead(fileName);

End Function

Но я понятия не имею, как на самом деле записать файл на мой «принимающий» сервер.Я играл с System.IO, но мне не повезло.Мне нужно что-то вроде:

Sub WritePDF ()

System.IO.WriteFile (MyService.GetPDF ("Test.pdf"), "C: \ NewPDF.pdf")

End Sub

Любые идеи по этому поводу будут высоко оценены!

Спасибо, Джейсон

1 Ответ

0 голосов
/ 09 мая 2011

Я считаю, что это то, что вы ищете:

.Net 4:

Using fileStream As Stream = File.Create("C:\NewPDF.pdf")
    MyService.GetPDF("Test.pdf").CopyTo(fileStream)
End Using

.Net 2.0 / 3.5:

    Using fileStream As Stream = File.Create("C:\NewPDF.pdf")
        Using inputStream As Stream = MyService.GetPDF("Test.pdf")
            Dim buffer(1023) As Byte
            Dim count As Integer = buffer.Length

            Do
                count = inputStream.Read(buffer, 0, count)
                If count = 0 Then Exit Do
                fileStream.Write(buffer, 0, count)
            Loop
        End Using
    End Using
...