Del via


Administrer relationer i Fabric API til GraphQL

En af de mest effektive funktioner i GraphQL er muligheden for at oprette relationer på tværs af typer, herunder understøttelse af en til en-relationer (1:1), en til mange (1:N) og mange til mange-relationer (M:N).

Opret en ny en til en-relation (1:1)

  1. I ruden Skemaoversigt skal du vælge ellipsen ud for en type og vælge indstillingen Administrer relationer . Skærmbilledet Administrer relationer vises.

    Skærmbillede af skærmbilledet Administrer relationer, der viser, hvor du skal vælge indstillingen Ny relation.

  2. Vælg Ny relation. I dette eksempel opretter vi en ny en til en-relation mellem typen Produkt og typen ProductModel baseret på feltet ProductModelID , der findes i begge typer. Vi vælger En til en for Kardinalitet, vælger typerne Fra og Til og vælger derefter felterne Fra og Til for denne relation.

    Skærmbillede af skærmbilledet Ny relation, der viser eksempler på valg for de fem påkrævede felter.

    Bemærk

    Du kan vælge flere felter i feltvælgerne Fra og Til. Denne funktion giver dig mulighed for at oprette relationer, der indeholder flere felter.

  3. Vælg Opret relation. Listen over relationer viser nu den netop oprettede relation.

    Skærmbillede af skærmbilledet Administrer relationer, der viser den netop oprettede relation på listen.

  4. Vælg X i øverste højre hjørne for at lukke skærmen Administrer relationer .

En til mange-relationer (1:N) og mange til mange -relationer (M:N)

Hvis du vil oprette en en til mange-relation (1:N), f.eks. mellem Produkt og Ordre, hvor hvert produkt kan knyttes til flere ordrer, skal du vælge Én til mange som kardinalitet. Denne relation afspejler ideen om, at et enkelt produkt kan knyttes til flere ordrer, men hver ordre er kun knyttet til ét produkt.

For en mange til mange-relation (M:N), f.eks. mellem bøger og forfattere, hvor en bog kan have flere forfattere, og en forfatter kan have flere bøger, skal du vælge Mange til mange som kardinalitet. Du skal have en linktype i skemaet for at imødekomme denne type relation.

I dialogboksen Ny relation kan du se et andet sæt vælgere, når du vælger Mange til mange som kardinalitet. I eksemplet med bøger og forfattere skal du vælge en linktype, f.eks. BooksAuthors, og felter som BookId og AuthorId som link fra og til felter.

Skærmbillede af dialogboksen Ny relation for en mange til mange-relation.

Overvejelser i forbindelse med mange til mange-relationer

Hvis sammenkædningstypen indeholder et eller flere felter, der ikke refereres til som Fra felt(er) eller Til-felter, genererer API til GraphQL automatisk fire en til mange-relationer på følgende måde:

  • En en til mange-relation fra typen Fra til linktypen
  • En en til mange-relation fra linktypen til typen Fra
  • En en til mange-relation fra typen Til til linktype
  • En en til mange-relation fra linktypen til typen Til

Disse giver dig mulighed for at referere til felter, der ikke er sammenkædet, i linktypen i forespørgsler eller mutationer, samtidig med at forespørgsler/mutationer, der refererer til relationerne i en hvilken som helst retning, tillades.

Hvis der ikke er nogen felter, der ikke er sammenkædet, i sammenkædningstypen, oprettes der en enkelt mange til mange-relation, og eventuelle forespørgsler eller mutationer behøver ikke at referere til sammenkædningstypen for at udnytte relationen.

Slet en relation

Du kan slette en relation fra skærmen Administrer relationer ved at markere afkrydsningsfeltet ud for relationen og derefter vælge Slet.