서버 코드wcf 서비스에서 대량의 데이터를 스트리밍해야합니다.
public class SIIUnzipDecodeService : ISIIUnzipDecodeService
{
//Upload the large data file
public void UploadFile(RemoteFileInfo request)
{
FileStream targetStream = null;
Stream sourceStream = request.FileByteStream;
string uploadFolder = @"C:\upload\";
string filePath = @"C:\upload\1GB.zip";
//Path.Combine(uploadFolder, request.FileName);
using (targetStream = new FileStream(filePath, FileMode.Create, FileAccess.Write, FileShare.None))
{
//read from the input stream in 6K chunks
//and save to output stream
const int bufferLen = 65000;
byte[] buffer = new byte[bufferLen];
int count = 0;
while ((count = sourceStream.Read(buffer, 0, bufferLen)) > 0)
{
targetStream.Write(buffer, 0, count);
}
targetStream.Close();
sourceStream.Close();
}
}
인터페이스 메모리 예외 system.outof 오류가 발생.
[ServiceContract]
public interface ISIIUnzipDecodeService
{
[OperationContract]
void UnzipAndDecode(MemoryStream fileContent);
[OperationContract]
RemoteFileInfo DownloadFile(DownloadRequest request);
[OperationContract]
void UploadFile(RemoteFileInfo request);
}
[MessageContract]
public class DownloadRequest
{
[MessageBodyMember]
public string FileName;
}
[MessageContract]
public class RemoteFileInfo : IDisposable
{
[MessageHeader(MustUnderstand = true)]
public string FileName;
[MessageHeader(MustUnderstand = true)]
public long Length;
[MessageBodyMember(Order = 1)]
public System.IO.Stream FileByteStream;
public void Dispose()
{
if (FileByteStream != null)
{
FileByteStream.Close();
FileByteStream = null;
}
}
}
은 Web.config의 – user359562
어떤 생각을 추가를? 제발 도와주세요 – user359562
서버 설정을 전혀 볼 수 없습니다 ... –