停止WebPage处理

HCL*_*HCL 1 asp.net

我已经构建了一个返回图像的asp.net页面Response.BinaryWrite().这很好,但我有以下问题.

Response.BinaryWrite()在Page_PreLoad事件中调用.我希望,asp.net继续执行页面的"正常"执行直到Unload事件,执行许多不再需要的东西,因为所有需要的操作已经完成.我是对的,如果是的话,是否有可能告诉asp.net该页面不再需要进一步处理.

更新:

感谢所有的答案.正如所建议的那样,我使用了ASHX-Handler,这正是我所需要的.感谢所有和+1这个方向的所有答案.对于所有与我有相同问题的人来说,David Stratton的链接显示了一种非常简单的方法.

Ode*_*ded 10

Application.CompleteRequest() 会为你做那件事.

导致ASP.NET绕过所有事件并在HTTP管道执行链中进行过滤,并直接执行EndRequest事件.

它可以通过Page这种方式从类中访问:

Context.ApplicationInstance.CompleteRequest();
Run Code Online (Sandbox Code Playgroud)

但是,如果您只想返回一个图像,那么您应该创建一个HTTP处理程序(实现的类IHttpHandler)而不是使用Page.请参阅 MSDN有关创建HTTP处理程序的文章.