我试图在IIS中停止这个警告,并且我正在读到,在调用IsClientConnected之前,我应该检查这个对象TransmitFile(filename)。这是正确的还是另一种方式来纠正这一点?
IIS异常
异常信息:异常类型: HttpException异常消息:远程主机关闭了连接。错误代码为0x800703E3。在System.Web.Hosting.IIS7WorkerRequest.RaiseCommunicationError(Int32结果中,布尔?throwOnDisconnect)
if (context.Response.IsClientConnected)
{
context.Response.Clear();
context.Response.ClearContent();
context.Response.Cache.SetCacheability(HttpCacheability.NoCache);
context.Response.AddHeader("Expires", "-1");
context.Response.ContentType = "application/pdf";
context.Response.TransmitFile(filename);
context.Response.Flush();
context.Response.End();
}
else
{
context.Response.End();
}更新代码
try
{
context.Response.Clear();
context.Response.ClearContent();
context.Response.Cache.SetCacheability(HttpCacheability.NoCache);
context.Response.AddHeader("Expires", "-1");
context.Response.ContentType = "application/pdf";
context.Response.TransmitFile(filename);
context.ApplicationInstance.CompleteRequest()
//context.Response.Flush();
//context.Response.End();
}
catch (HttpException hex)
{
}发布于 2020-06-07 06:49:09
此错误意味着代码中存在运行时异常。通常,当通过IIS托管应用程序时,会出现这样的错误,这些错误将立即关闭连接。
应该通过附加到进程w3wp来调试代码。
通过在Visual中导航到:
---> DEBUG
---> Attach to process
---> choose w3wp.exe
---> attach to process疑难解答意味着您要检查IsClientConnected对象,因为它是可能导致异常的最常见问题--如果您试图调用不存在的客户端(例如,IsClientConnected是null )。
https://stackoverflow.com/questions/62140065
复制相似问题