我正在创建一个数据流管道,负责异步处理发送到HttpListener
的HttpRequests。为了响应请求,我可能不得不做一些耗时的操作,例如分析或从数据库中提取大量数据,从而采用数据流方法。我正在使用HttpListener.GetContextAsync
将HttpListenerContext
传递到管道中的第一个块,然后处理请求并生成响应。
我遇到的问题是我需要拥有原始HttpListenerContext
对象才能将响应发送回客户端。我的第一个想法是,我可以将对象传递到元组内部的整个管道中,但很快就会开始看起来感觉非常混乱。
最终,从设计的角度来看,我希望能够将HttpListenerContext
传递到管道,并在流程结束时收到响应,然后我可以回复而无需传递对象通过整个事情。是否可以将管道的最终结果与发布到其中的初始对象相关联?