首页 新闻 赞助 找找看

操作WebResponse.GetResponseStream出错:此流不支持查找操作

0
悬赏园豆:30 [已解决问题] 解决于 2015-08-04 21:24

通过 WebResponse.GetResponseStream 拿到的 Steam,只要访问 Position 属性,就会出现“此流不支持查找操作”的错误。

[NotSupportedException: 此流不支持查找操作。]
   System.Net.ConnectStream.get_Length() +60

请问如何解决这个问题?

C#
dudu的主页 dudu | 高人七级 | 园豆:31075
提问于:2015-08-04 18:08
< >
分享
最佳答案
0

将此流复制到MemoryStream中进行操作:

using (var responseSteam = webResponse.GetResponseStream())
{
    using (var ms = new MemoryStream())
    {
        await responseSteam.CopyToAsync(ms);
        //...
    }
}
dudu | 高人七级 |园豆:31075 | 2015-08-04 21:23

想问问dudu这是什么原理,既然已经拿到响应的stream了,为什么还不能访问?

顾晓北 | 园豆:10844 (专家六级) | 2015-08-05 09:14

@顾晓北: 这个没去研究

dudu | 园豆:31075 (高人七级) | 2015-08-05 09:34
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册