graphql-dotnet VS graphql-net - какая библиотека полезна для извлечения / записи данных в / из БД

Я хочу интегрировать GraphQL в мое существующее приложение ASP.NET Framework (с Entity Framework 4), в качестве сервера которого используется MSSQL-сервер.

Просматривая библиотеки GraphQL для.NET, я обнаружил 2 библиотеки - graphql-dotnet и graphql-net, предлагаемые на веб-сайте GraphQL (ссылка: http://graphql.org/code/).

Кажется, что (поправьте меня, если я ошибаюсь):

  1. graphql-dotnet ( https://github.com/graphql-dotnet/graphql-dotnet) - эта библиотека поддерживает только данные в памяти
  2. graphql-net ( https://github.com/ckimes89/graphql-net) - эта библиотека хорошо работает, если мы хотим работать с данными, которые хранятся в БД.

Любое предложение или исправления? Можно ли выполнять чтение / запись в / из БД, используя бывшую (то есть graphql-dotnet) библиотеку? Или я должен вместо этого использовать библиотеку graphql-net?

0 ответов

Я один из участников Hot Chocolate.

Вы можете использовать обе платформы, которые вы упомянули там.

GraphQL-net больше ориентирован на построение схемы GraphQL на IQueryable.

Я бы сказал, что GraphQL-dotnet - лучшее из обоих решений.

Существуют интеграции, которые поддерживают отображение структуры сущностей в GraphQL-dotnet, а также обеспечивают поддержку DataLoader, что важно для решения проблем N+1 при загрузке данных из бэкэнда с GraphQL.

"Горячий шоколад" - это третий фреймворк, реализующий стек GraphQL для.Net Core и.Net Framework (также указанный на graphql.org).

Он также поддерживает DataLoader, и у нас есть пример с mongo db. Я надеюсь, что это поможет вам: https://github.com/ChilliCream/hotchocolate-examples/tree/master/DataLoader

Итак, в нашем проекте мы решили использовать библиотеку graphql-dotnet для получения данных от сервисов API и списков общих точек доступа - так что это своего рода прокси-сервис WebAPI. Сейчас мы находимся в работе, и он отлично работает с хорошей производительностью (кроме получения данных из списка sharepoint, но это проблема SharePoint, а не graphql-dotnet lib).

Кстати, сама библиотека более стабильна, чем graphql-net, и имеет много активных дополнений.

Еще один проект или, я бы сказал, компонент, в котором мы решили использовать библиотеку graphql-dotnet, также выпущен. Этот компонент позволяет вам подключаться к БД и легко конфигурировать схемы GraphQL (через файл json). Уже реализованы такие основные функции, как: сортировка, разбиение на страницы и сложный фильтр.

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