奇怪的交易。我们将 asmx 服务的配置设置为允许文件大小最大为 70MB,如下所示:
<httpRuntime executionTimeout="1000" maxRequestLength="70000"/>
在您尝试超过 20MB 的文件之前,一切正常。组成堆栈的异常是
System.Net.WebException:请求失败,HTTP 状态为 404:未找到。在 System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage 消息,WebResponse 响应,流 responseStream,布尔 asyncCall)在 System.Web.Services.Protocols.SoapHttpClientProtocol.InvokeAsyncCallback(IAsyncResult 结果)
这是来自 asmx 的代码块,它试图将文件放在目录/集合中:
[WebMethod]
public string UploadFile(byte[] contents, string destUrl)
{
var theReturn = "Bad";
SPSecurity.RunWithElevatedPrivileges(delegate()
{
SPWeb site = new SPSite(destUrl).OpenWeb();
site.Files.Add(destUrl, contents);
});
theReturn = "Good";
return theReturn;
}
我们怀疑它可能与 SharePoint 端的最大文件大小限制有关,但我们无法找到该设置或在其上查找任何文档。虽然,它显然可能是别的东西。我正在寻找想法。TIA