如何使用JSON.NET';使JsonTextReader异步从NetworkStream中读取
本文关键字:异步 JsonTextReader NetworkStream 读取 JSON 何使用 NET | 更新日期: 2023-09-27 17:57:50
我为Silverlight实现了自己的NetworkStream
端口,它只允许异步调用
我想阅读一些从服务器上收到的JSON-RPC消息,所以我想使用JSON.NET JsonTextReader
,所以我得到了以下代码:
reader = new JsonTextReader(new StreamReader(new NetworkStream(new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp))));
// ...
reader.Read();
我的问题是,它将尝试执行同步操作,而同步操作反过来只抛出UnsupportedException
有没有一个异步StreamReader
可以给JsonTextReader
供电
我应该采取另一种方法吗?
我认为你应该这样做。我不认为您可以强制JsonTextReader使用异步方法,但您可以修改用于获取数据的整个方法,使其异步运行。此外,使用
using(var io = new StreamReader())
{
io.Read();
}
语法。