更改提要迭代器内容反序列化

Change feed iterator content deserialization

目前,我正在寻找使用 System.Text.Json 对 Change Feed Iterator 内容中的实体进行反序列化的方法。

我从文档中找到了 this 示例,但它使用 Newtonsoft.Json 并且我不喜欢使用 JObject 和 JsonTextReader 的方法。 有什么方法可以让它更妥当更干净吗?

我试过做这样的东西,但我的方法行不通。

ResponseMessage response = await iterator.ReadNextAsync(); 

var entities = await JsonSerializer.DeserializeAsync<IEnumerable<CosmosEntity1>>(response.Content);

您获得的响应流不是您文档的 IEnumerable,而是包含文档作为其属性之一的 class。尝试创建以下 class:

public class ExampleResponse
{
    public string _rid { get; set; }
    public List<CosmosEntity1> Documents { get; set; }
    public int _count { get; set; }
}

并将您的流反序列化为 class。