我有一个带有“统计”字段的查询,这是一个具有三个不同累积值的子查询。我希望能够为统计数据提供一个国家/地区参数,然后在解析器中访问子查询中不同字段的该参数。
我正在使用 GraphQL.Server.Transports.AspNetCore nuget 包。子查询使用 IDependencyResolver 解析,因为它对在解析器中用于不同字段的服务有一些依赖关系。
我试图通过 ResolveFieldContext 访问父级,但它似乎不可用。上下文中有一个名为“Source”的属性,但它指的是子查询对象。
如果我们查看 GraphQL 的其他实现似乎应该是可能的,但我不知道如何从 ASP.NET Core 获得结果
下面的代码显示了名为“CompanyGroupQuery”的主查询的一部分
Field<CompanyStatisticsQuery>(
"statistics",
arguments: new QueryArguments(new QueryArgument<StringGraphType> { Name = "country" }),
resolve: context => resolver.Resolve<CompanyStatisticsQuery>()
);
子查询看起来像这样
Field<IntGraphType>(
"completeInvoicesCount",
resolve: context => {
// This is to show what I'm trying to achieve
var parent = context.Parent;
var companyId = context.GetArgument<string>("companyId");
var country = context.GetArgument<string>("country");
return null;
}
);