不应该读一个流,结束它吗?
Shouldn't reading a stream, end it?
为什么读取 Response.Content.ReadAsStreamAsync()
不会阻止将输出写入客户端?
总结:我在 ASP.NET WebAPI 2
应用程序中有一个 ActionFilter
,我正在 ActionExecuted
事件中读取整个输出流。这是示例代码:
var content = actionExecutedContext.Response.Content.ReadAsStreamAsync().Result;
byte[] buffer = new byte[content.Length];
content.Read(buffer, 0, (int)content.Length);
在那之后我期待的是一个空输出,但毕竟整个输出都将发送给客户端。我在这里错过了什么?不应该读一个流,结束它?
不幸的是,它在调用该方法后不会清空响应,它只是序列化响应和 returns 表示序列化内容的 Stream(请参阅 HttpContent.ReadAsStreamAsync Method)
如果您想清除响应,您可以尝试将响应的 Content
属性 的值设置为从 [= 派生的 类 之一的新实例12=].
希望对您有所帮助!
为什么读取 Response.Content.ReadAsStreamAsync()
不会阻止将输出写入客户端?
总结:我在 ASP.NET WebAPI 2
应用程序中有一个 ActionFilter
,我正在 ActionExecuted
事件中读取整个输出流。这是示例代码:
var content = actionExecutedContext.Response.Content.ReadAsStreamAsync().Result;
byte[] buffer = new byte[content.Length];
content.Read(buffer, 0, (int)content.Length);
在那之后我期待的是一个空输出,但毕竟整个输出都将发送给客户端。我在这里错过了什么?不应该读一个流,结束它?
不幸的是,它在调用该方法后不会清空响应,它只是序列化响应和 returns 表示序列化内容的 Stream(请参阅 HttpContent.ReadAsStreamAsync Method)
如果您想清除响应,您可以尝试将响应的 Content
属性 的值设置为从 [= 派生的 类 之一的新实例12=].
希望对您有所帮助!