【发布时间】:2009-06-15 10:07:21
【问题描述】:
我有一个带有 WebMethod 的标准 SOAP 网络服务,它接受一个字节数组,然后执行一个
[WebMethod(true)]
WriteFile(byte[] Data, string FilePath)
{
File.WriteAllBytes(FilePath, Data);
}
如果此过程传递一个大文件,例如2 兆它正在轰炸,并显示以下错误消息:
系统资源不足 完成请求的服务
查看我得到的堆栈跟踪:
- System.IO.File.WriteAllBytes
- System.IO.FileStream.Write
- System.IO.FileStream.WriteCore
- System.IO.__Error.WinIOError
- System.IO.IOException:系统资源不足,无法完成请求的服务
我已经尝试了所有显而易见的事情,例如将 maxrequestlength 和执行超时设置为更实际的设置:
<httpRuntime maxRequestLength="409600" executionTimeout="900"/>
它似乎仍然可以通过上述方式进行故障转移。如果您发送一个较小的文件,它可以很好地保存到磁盘上。所以问题在于文件大小或时间。
有谁知道我还能做些什么来解决这个问题?
谢谢
戴夫
【问题讨论】:
标签: .net web-services soap