【发布时间】:2011-05-24 02:13:29
【问题描述】:
我有一个 WCF 服务,我想发送一个日志文件并在服务器上处理它。 合同是:
[OperationContract]
void LogFile(Stream file);
我在端点中使用 StreamedRequest。
我的问题是我找不到在服务中读取流的方法。
当我调试调用时,我看到 Stream 是一个实例:
System.ServiceModel.Dispatcher.StreamFormatter.MessageBodyStream
我从客户端发送一个 MemoryStream。
那么...我如何读取流?
谢谢。
编辑1: 我正在使用:
Stream serviceStream = new MemoryStream();
byte[] buffer = new byte[10000];
int bytesRead = 0;
do
{
bytesRead = file.Read(buffer, 0, buffer.Length);
serviceStream.Write(buffer, 0, bytesRead);
} while (bytesRead > 0);
serviceStream.Position = 0;
读取流,什么都没有,总是 0
【问题讨论】: