我正在尝试在 IIS 中停止此警告,并且我正在阅读我应该IsClientConnected在调用TransmitFile(filename). 这是正确的还是另一种纠正方法?
IIS 异常
异常信息: 异常类型:HttpException 异常消息:远程主机关闭了连接。错误代码是 0x800703E3。在 System.Web.Hosting.IIS7WorkerRequest.RaiseCommunicationError(Int32 result, Boolean ?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();
}
Run Code Online (Sandbox Code Playgroud)
更新代码
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)
{
}
Run Code Online (Sandbox Code Playgroud)
此错误意味着您的代码中存在运行时异常。通常,当通过 IIS 托管您的应用程序时,会出现此类错误,这些错误将立即关闭连接。
您应该通过附加到进程w3wp来调试代码。
通过在 Visual Studio 中导航至:
---> DEBUG
---> Attach to process
---> choose w3wp.exe
---> attach to process
Run Code Online (Sandbox Code Playgroud)
故障排除程序建议您检查对象,IsClientConnected因为这是可能导致异常的最常见问题 - 如果您尝试调用不存在的客户端(IsClientConnected例如null)。
| 归档时间: |
|
| 查看次数: |
377 次 |
| 最近记录: |