Поделиться через


Управление связями в API Fabric для GraphQL

Примечание.

API Microsoft Fabric для GraphQL находится в предварительной версии.

Одной из самых мощных функций GraphQL является возможность устанавливать связи между типами, включая поддержку связей "один к одному" (1:1), "один ко многим" (1:N) и "многие ко многим" (M:N).

Создание связи "один к одному" (1:1)

  1. В области обозревателя схем выберите многоточие рядом с типом и выберите параметр "Управление связями". Откроется экран "Управление связями".

    Снимок экрана: экран

  2. Выберите Создать отношение. В этом примере мы создадим новую связь между типом Product и типом ProductModel на основе поля ProductModelID, существующего в обоих типах. Выберите один к одному для кратности, выберите типы "От" и "В", а затем выберите поля "От" и "В" для этой связи.

    Снимок экрана: экран

    Примечание.

    Вы можете выбрать несколько полей в средства выбора полей "От" и "В". Эта функция позволяет создавать связи, составляющие несколько полей.

  3. Выберите " Создать связь". В списке связей теперь отображается только что созданная связь.

    Снимок экрана: экран

  4. Выберите X в правом верхнем углу, чтобы закрыть экран "Управление связями ".

Связи "один ко многим" (1:N) и "многие ко многим" (M:N)

Чтобы создать связь "один ко многим" (1:N), например между продуктом и заказом, где каждый продукт может быть связан с несколькими заказами, выберите один ко многим, как карта inality. Эта связь отражает идею, что один продукт может быть связан с несколькими заказами, но каждый заказ связан только с одним продуктом.

Для отношений "многие ко многим" (M:N), например между книгами и авторами, где книга может иметь несколько авторов и автор может иметь несколько книг, выберите "Многие", как карта inality. Необходимо иметь тип связывания в схеме, чтобы соответствовать этому типу связи.

В диалоговом окне "Создать связь" отображается еще один набор средств выбора при выборе "многие ко многим" в качестве карта inality. В примере книг и авторов вы выберете тип связывания, например BookAuthors, и поля, такие как BookId и AuthorId, как связывание между полями и полями.

Снимок экрана: диалоговое окно

Рекомендации по связям "многие ко многим"

Если тип связывания содержит одно или несколько полей, которые не ссылаются на поля from илиTo поля, API для GraphQL автоматически создает четыре связи "один ко многим", как показано ниже.

  • Связь "один ко многим" из типа From к типу"Связывание"
  • Связь "один ко многим" из типа "Связывание" с типом From
  • Связь "один ко многим" из типа To к типу"Связывание"
  • Связь "один ко многим" из типа "Связывание" в тип "To"

Они позволяют ссылаться на несвязанные поля в типе связывания в любых запросах или изменениях, а также разрешать запросы и мутации, ссылающиеся на связи в любом направлении.

В случае отсутствия несвязанных полей в типе связывания будет создана одна связь "многие ко многим", и любые запросы или изменения не должны ссылаться на тип связывания для использования связи.

Удаление связи

Вы можете удалить связь на экране "Управление связями", выбрав проверка box рядом с этой связью, а затем нажмите кнопку "Удалить".