Стратегия выполнения клиента GraphQL Strawberry ShakeC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Стратегия выполнения клиента GraphQL Strawberry Shake

Сообщение Anonymous »

Я создал сервис HotChocolate и клубничный клиент согласно документации на сайте chillcream. Вот мой клиентский код:

Код: Выделить всё

namespace strawberry_shake_graphql_client
{
internal class Program
{
static IServiceCollection serviceCollection = new ServiceCollection();
static IServiceProvider serviceProvider;
static IStrawberryShakeGraphQLClient client;
static async Task Main(string[] args)
{
serviceCollection
.AddStrawberryShakeGraphQLClient(StrawberryShake.ExecutionStrategy.CacheAndNetwork)
.ConfigureHttpClient(c => c.BaseAddress = new Uri("https://localhost:7148/graphql/"));
serviceProvider = serviceCollection.BuildServiceProvider();
client = serviceProvider.GetRequiredService();
while(Console.ReadLine() != string.Empty)
{
await GetBooks();
}
}
static async Task GetBooks()
{
IOperationResult result = await client.Getbooks.ExecuteAsync();
if (result.IsErrorResult())
{
Console.WriteLine("ExecuteAsync() failed!");
return;
}
foreach (var book in result.Data.BooksList)
{
Console.WriteLine(book.Title);
}
}
}
}
Моя цель – заставить моего клиента получать данные из службы HotChocolate, если сетевое соединение находится в сети, и из локального хранилища/репозитория, если сетевое соединение отключено.
В соответствии с этим https://chillicream.com/docs/strawberry ... 13/caching я ожидаю, что мой клиент продолжит нормально работать и будет предоставлять данные из локального кеша/репозитория, когда служба HotChocolate остановлена ​​или недоступна.
Вместо предоставления данных из локального кэша я получаю HttpRequestExeption, когда мой клиент выполняет запрос GetBooks с помощью автономной службы HotChocolate.
В примере кода чего-то не хватает? мои ожидания неверны?
Может ли кто-нибудь предоставить мне пример кода, как заставить мой клиент работать так, как ожидалось выше?


Подробнее здесь: https://stackoverflow.com/questions/755 ... n-strategy
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»