Код: Выделить всё
[ExtendObjectType(OperationTypeNames.Query)]
public class FooQuery
{
[GraphQLName("searchFoo")]
public async Task SearchFoo(FooRequest request)
{
var foo = new Foo {
Bar = GetBar(), // Slow, may return null
Baz = GetBaz() // Slow, may return null
}
if (Bar == null && Baz == null) {
throw new GraphQLException(...);
}
return foo;
}
}
Q: Есть ли способ, которым я могу обнаружить поля, которые были просят, и кратко обрабатываемой обработки Baz ? Бар приведет к тому, что весь запрос вернет ошибку, даже если данные фактически доступны для Baz . У нас уже есть клиенты, которые называют этот запрос, поэтому я бы предпочел не разделить его на отдельные запросы, так как это потребует изменений в клиентском коде, которые я не имею контроля.
Подробнее здесь: https://stackoverflow.com/questions/791 ... late-query