Сначала я разрабатываю приложение Blazor как приложение Blazor Server, но более долгосрочная цель - развернуть то же приложение в конфигурации веб-сборки + сервера.
Я бы предпочел принять GraphQL с первого день кодирования, пока создается прототип Blazor Server, но это создает ситуацию, когда код клиента GraphQL и код сервера HotChocolate выполняются в одном процессе. Возможно ли это?
Следующий код в документации HotChocolate показывает, что можно отправлять запросы GraphQL в Hotchocolate, выражая запрос в schema.Execute (q), однако я бы предпочел закодировать полный стек GraphQL и просто пропустить сетевую активность, когда полный стек выполняется в одном серверном процессе Blazor.
https://github.com/ChilliCream/hotchocolate-docs/blob/master/docs/introduction.md
public class Query
{
public string Hello() => "World!";
}
var schema = SchemaBuilder.New().AddQueryType<Query>().Create();
var executor = schema.MakeExecutable();
Console.WriteLine(executor.Execute("{ hello }").ToJson());