Каков синтаксис для Url/Uri в GraphQL HotChocolate?

Я пишу запрос GraphQL с параметром, который имеет тип Uri в C#. При вводе значения " http://dotnetperls.com/" он сообщает, что тип указан неверно. Кто-нибудь знает, в каком формате это должно быть, чтобы соответствовать GraphQL?

1 ответ

Решение

Список скалярных типов HotChocolate содержит UrlType, который отображается на Uri. Объявление вашего аргумента типа UrlType должно быть достаточно. В зависимости от версии HotChocolate, которую вы используете, платформа может автоматически ввести аргумент, в противном случае вы можете переопределить тип вашего аргумента в конфигурации QueryType:

public class QueryType: ObjectType<Query>
{
    protected override void Configure(IObjectTypeDescriptor<Query> descriptor)
    {
         [...]
         descriptor.Field(t => t.GetMyEntity(default))
            .Argument("myArgument", a => a.Type<NonNullType<UrlType>>());
         [...]
    }
}

Изменить: ниже версии 9.0.0 вам нужно зарегистрировать расширенные скалярные типы, как показано здесь.

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