如何在 GraphQL dotnet 客户端应用程序中接收真实对象?

How to receive a real object in GraphQL dotnet client app?

我 运行 GraphQL 客户端并发送查询

        var response3 = await client2.SendQueryAsync<ADescriptorResponse2>(request2);
        var response2 = await client2.SendQueryAsync<dynamic>(request2);
        var response1 = await client2.SendQueryAsync<object>(request2);

   public class ADescriptorResponse2
    {
        public ADescriptor aDescriptor { get; set; }
    }
    public class ADescriptor
    {
        public long  Action { get; set; }
        public string Name { get; set; }
        public string Description { get; set; }
    }

但是第一种情况 var response3 = await client2.SendQueryAsync(request2); 我收到 response3.Data ==null,输入 ADescriptorResponse2 在其他两种情况下,我收到的数据都是正确的,但它是 isNewtonsoft.Json.Linq.JObject 类型。 为什么我没有收到填充数据的 ADescriptorResponse2 的数据? 哪里不对?

这很可能意味着数据结构无法正确反序列化为 ADescriptorResponse2 类型。

你可以检查你从response2和response1得到的数据结构,看它是否是ADescriptorResponse2的形状。

这可能是一些嵌套对象问题,您需要在 ADescriptorResponse2 或类似性质的东西之上添加另一个对象。