.Net Core 3.1, использующий GraphQLHttpClient из C#/WPF, зависает, но работает с ConsoleApp

Я создал небольшой сервер GraphQl, который очень хорошо работает с Banana Cake Pop.

Затем я создал небольшое приложение C#/.Net Core 3.1 WPF , в котором есть библиотека классов, использующая GraphQL.Client 3.2.2 и GraphQL.Client.Serializer.Newtonsoft 3.2.2.

У него также есть такой класс для вызова конечной точки GraphQL:

          public class RepositoryBase
{
    protected GraphQLHttpClient GraphQLHttpClient { get; private set; }

    public RepositoryBase()
    {
        GraphQLHttpClient = new GraphQLHttpClient("http://xxx/graphql/",
                                                    new NewtonsoftJsonSerializer());
    }
}

public class ArtRepository : RepositoryBase
{
    public List<Art> GetArterByGruppe(short GruppeId)
    {
        var queryString = @"query { arter(where: { and:[{ gruppeId: { eq: 1200} } { su: { eq: false} } { setIDk: { eq: true} }]}
                      order: {artNavn:ASC}) {
                      artNavn 
                      artId 
                      gruppe {
                          gruppeNavn 
                          gruppeId 
                      } 
                    }
                }";

        var request = new GraphQLRequest
        {
            Query = queryString
        };

        var result = GraphQLHttpClient.SendQueryAsync<ArtResponse>(request).ConfigureAwait(false);
        return result.GetAwaiter().GetResult().Data.Arter;
    }
}

Если я вызываю этот метод из приложения WPF, как в событии Windows Loaded, вызов GrapQl Server застревает — без ошибок.

                  var repository = new ArtRepository();
        var x = repository.GetArterByGruppe(1700);

Итак, в отчаянии, я создал проект ConsoleApp в решении WPF, который делает тот же вызов для класса ArtRepository, и он работает очень хорошо и возвращает данные.

Я не понимаю, как приложение WPF может влиять на клиент GraphQL таким образом, что он застревает?

0 ответов

Другие вопросы по тегам