我正在使用GraphQL和DocumentDb构建具有.NET核心的Web API。
GraphQL
DocumentDb
理论上,GraphQL已优化,数据通过网络传送,因此避免了过度获取数据。但是我知道,查询数据库时,后端服务器和数据库正在执行额外的不必要工作(查询整个文档)。
这里最好的策略是对需要获取的特定属性使用Select()。但是我不知道如何从如此复杂的客户端查询中构建表达式。
Select()
非常感谢任何帮助。
谢谢
对于SQL表达式,如果我们要查询jedis并希望列名和列,我们可以使用如下脚本:
SELECT name, side FROM jedis;
让我们通过查询更新代码,如下所示:
var json = schema.Execute(_ => { _.Query = "{ jedis { name, side } }"; }); Console.WriteLine(json);
结果为:
有关更多详细信息,您可以参考此article和此one。