Del via


Opprette et program ved hjelp av DevOps og GraphQL API

Gjelder for:SQL-database i Microsoft Fabric

I denne delen av opplæringen bruker du ressursene du har opprettet, til å lage et nettprogram som gjør det mulig for brukeren å velge et område som er berørt av et strømbrudd, og deretter se de andre leverandørene i dette området, for å varsle firmaet om eventuelle ytterligere forstyrrelser i forsyningskjeden. Du oppretter et GraphQL-endepunkt over dataene, og deretter oppretter du et ASP.NET program du kan distribuere lokalt eller til en skyleverandør.

Programvareutviklingsprosjekter involverer Developer Operations (DevOps)-oppgaver, hvorav den ene er kildekontroll. Du begynner denne inndelingen ved å plassere elementene du har opprettet under kildekontroll.

Denne artikkelen presenterer en rekke nyttige scenarioer for å opprette et program basert på SQL-database i Fabric.

Forutsetning

CI/CD i Fabric med Azure DevOps

I denne delen av opplæringen lærer du hvordan du arbeider med SQL-databasen i Microsoft Fabric med Azure DevOps.

En SQL-database i Microsoft Fabric har kildekontrollintegrering som gjør det mulig for SQL-brukere å spore definisjonene av databaseobjektene sine over tid og på tvers av et team:

  • Teamet kan overføre databasen til kildekontroll, som automatisk konverterer den direktesendte databasen til kode i det konfigurerte kildekontrollrepositoriet (Azure DevOps).

  • Teamet kan oppdatere databaseobjekter fra innholdet i kildekontrollen, som validerer koden i Azure DevOps før du bruker en differenialendring i databasen.

    Diagram over en enkel kildekontrollløkke.

Hvis du ikke er kjent med kildekodekontroll i Microsoft Fabric, er dette en anbefalt ressurs:

Kom i gang med kildekontroll

Når du har fullført disse forutsetningene, kan du holde arbeidsområdet synkronisert med Azure DevOps. Dette lar deg utføre eventuelle endringer du gjør i arbeidsområdet til Azure DevOps-grenen, og oppdatere arbeidsområdet når noen oppretter nye forpliktelser til Azure DevOps-grenen.

Nå redigerer du ett av objektene i databasen ved hjelp av Azure DevOps, som oppdaterer både repositoriet og databaseobjektene. Du kan også redigere objekter direkte i repositoriet eller «sende» dem dit, men i dette tilfellet utføre alle trinnene i Azure DevOps-miljøet.

  1. Kontroller at arbeidsområdet er konfigurert til å være under kildekontroll, og at alle objekter vises synkronisert i arbeidsområdevisningen.

  2. I arbeidsområdevisningen ser du git-ikonet, grenen du valgte, og en melding om siste gang arbeidsområdet ble synkronisert med kildekontrollen. Ved siden av dato og klokkeslett ser du en identifikatorkobling for den bestemte plasseringen i Azure DevOps-miljøet. Åpne koblingen for å fortsette.

    Skjermbilde som viser koblingen til plasseringen av Azure DevOps-miljøet i arbeidsområdet.

  3. Logg på Azure DevOps-miljøet hvis du blir bedt om det.

  4. Når du er inne i Azure DevOps-miljøet, velger du Filer-elementet i utforskerruten. Objektene som synkroniseres med SQL-databasen i Fabric og repositoriet, vises.

  5. Utvid suppy_chain_analytics_database. SQLDatabase, deretter dbo, deretter tabeller og deretter Suppliers.sql objekt.

    Skjermbilde som viser databaseobjektet leverandører i Azure DevOps.

Legg merke til T-SQL-definisjonen for tabellen i objektinnholdet. I et produksjonskodingsmiljø vil dette objektet bli endret ved hjelp av utviklingsverktøy som Visual Studio eller Visual Studio Code. I alle fall replikeres definisjonen av databaseobjektet til repositoriet, som du speilet fra den gjeldende tilstanden til databasen. La oss bruke Kildekontroll for Azure DevOps til å gjøre noen endringer i databaseobjektene i de neste opplæringstrinnene.

  1. [Fax] Finn kolonnedefinisjonslinjen, og velg Rediger-knappen. Rediger kolonnedefinisjonen til [Fax] NVARCHAR (255) NULL,.

  2. Velg Utfør-knappen.

    Skjermbilde som viser redigering av definisjonen av fakskolonnen i Leverandører-tabellen i Azure DevOps.

  3. Fyll ut utføringsmeldingsboksen som vises, og velg Utfør-knappen . Prøv å være beskrivende for hver endring i kildekontrollen, til din og teamets fordel.

  4. Utføringen skriver endringen til repositoriet.

  5. Bytt tilbake til SQL-databasen i Fabric-portalen, og velg deretter Kildekontroll.

  6. Du har én oppdatering som venter. I produksjon skal du se gjennom disse endringene. Velg Oppdater alt-knappen. Oppdateringen kan ta litt tid.

  7. Velg SQL-databasen i Stoffnavn. Åpne et nytt spørringsvindu i SQL-databasen.

  8. Kopier og lim inn følgende T-SQL-kode for å se endringene i tabellen direkte i databasen:

    SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'Suppliers';
    
  9. Skriv inn følgende T-SQL-kode som spørringen skal legge til en kolonne med navnet Notes i Suppliers tabellen. Uthev bare den delen av koden, og velg Kjør-knappen :

    ALTER TABLE Suppliers ADD Notes NVARCHAR(MAX);
    
  10. Gå nå tilbake til opplæringsarbeidsområdet i Fabric-portalen.

  11. Velg Kildekontroll-knappen, og legg merke til at i stedet for en oppdatering, viser systemet en endringsforespørsel. Merk av for objektnavnet, og velg deretter Utfør-knappen .

  12. Systemet utfører endringene som er gjort i redigeringsprogrammet for spørring, og du kan gå tilbake til Azure DevOps-portalen og navigere til Filer-området og dbo skjemaet og deretter tabeller og Suppliers objekt for å se den nye kolonnen. (Du må kanskje oppdatere siden for å se endringen.)

    Skjermbilde som viser Leverandører-tabellen med en annen datatype for faks.

Du har nå sett hvordan du kan samhandle med SQL-databaseobjektskjemaene fra kildekontrollen i Azure DevOps. Hvis du vil ha mer informasjon om kildekontroll i Microsoft Fabric, kan du se INTEGRERING AV SQL-databasekildekontroll i Microsoft Fabric og Opplæring: Livssyklusadministrasjon i Fabric.

Konfigurere og konfigurere GraphQL-API-en

Tilkobling til et databaseprogram innebærer ofte å installere et sett med biblioteker for programmet som bruker TDS-protokollen (Tabular Data Stream) som samhandler direkte med databasen.

Microsoft Fabric inkluderer et GraphQL-grensesnitt for å arbeide ikke bare med databaser, men med flere datakilder. Du kan også kombinere disse kildene for en integrert datavisning. GraphQL er et spørringsspråk for API-er som lar deg be om nøyaktig de dataene du trenger, noe som gjør det enklere å utvikle API-er over tid og aktivere kraftige utviklerverktøy. Den gir en fullstendig og forståelig beskrivelse av dataene i API-en, noe som gir kundene muligheten til å be om nøyaktig det de trenger og ikke noe mer. Dette gjør apper som bruker GraphQL raskt og stabilt, fordi de kontrollerer dataene de får, ikke serveren. Du kan tenke på GraphQL-grensesnittet som å gi en visning av et sett med data i en datakilde. Du kan spørre etter dataene og endre dataene ved hjelp av mutasjoner. Du kan lære mer om GraphQL på denne referansen.

Du kan begynne å bygge GraphQL-API-er direkte fra Redigeringsprogrammet for Sql-spørring i Fabric SQL. Fabric bygger GraphQL-skjemaet automatisk basert på dataene dine, og programmene er klare til å koble til på få minutter.

Opprette en API for GraphQL

Slik oppretter du API-en for GraphQL som du vil bruke for et program:

  1. Åpne portalen for opplæringsdatabasen.

  2. Velg Ny-knappen, og velg API for GraphQL.

  3. Skriv inn teksten supplier_impact_gql for navnetelementet, og velg Opprett.

  4. Du presenteres med et Velg data-panel . Rull til du finner SupplyChain.vProductsBySuppliersvisningen du opprettet tidligere i denne opplæringen. Velg den.

    Skjermbilde som viser velg dataforhåndsvisning av data i visningen.

  5. Velg Last inn-knappen .

  6. Erstatt teksten du ser der i spørringspanelet, med følgende GraphQL-spørringsstreng:

    query { vProductsbySuppliers(filter: { SupplierLocationID: { eq: 7 } }) { items { CompanyName SupplierLocationID ProductCount } } }
    
  7. Velg Kjør-knappen i Spørring1-vinduet. Resultatene av GraphQL-spørringen returneres til Resultat-vinduet i JSON-format.

    Skjermbilde av en GraphQL-spørring og resultatsett for en SQL-database.

  8. Velg Kopier endepunkt-knappen på båndet.

  9. Velg Kopier-knappen når kopier koblingspanelet vises. Lagre denne strengen på en notisblokk eller en annen plassering som skal brukes i eksempelprogrammet for denne opplæringen. Det vil for eksempel se omtrent slik ut: https://api.fabric.microsoft.com/v1/workspaces/<work space id>/graphqlapis/<graph api id>/graphql

API-en for GraphQL er nå klar til å godta tilkoblinger og forespørsler. Du kan bruke API-redigeringsprogrammet til å teste og prototype GraphQL-spørringer og Skjemautforsker for å bekrefte datatypene og feltene som vises i API-en. Hvis du vil ha mer informasjon, kan du se Opprette GraphQL-API fra SQL-databasen i Fabric-portalen.

Opprette et webprogram for å spørre etter data

Så langt i denne opplæringen har du opprettet en database som lagrer salg og produkter for Contoso, og lagt til leverandører og sammenføyning av enheter ved hjelp av Transact-SQL (T-SQL). Du ønsker nå å tillate utviklere å bruke dataene uten å måtte lære T-SQL, og også gjøre dem i stand til å spørre flere Microsoft Fabric-komponenter i ett enkelt grensesnitt. Kjør dette programmet lokalt i et selvbetjent .NET REST-grensesnitt som får tilgang til GraphQL-endepunktet du opprettet i denne opplæringen. Du kan også distribuere dette programmet direkte til Microsoft Azure som et nettprogram, eller til en annen webserver du ønsker.

Opprette et nettprogram ved hjelp av SQL-databasen i Fabric API for GraphQL

Du har blitt bedt om å opprette et program som viser alle berørte leverandører hvis en plassering har en forsyningskjedepause, på grunn av naturkatastrofer eller andre avbrudd. Denne koden viser hvordan du oppretter et ASP.NET program som bruker en GraphQL-spørring til å få tilgang til en spørring i SQL In Fabric GraphQL-endepunktet du opprettet i den siste delen av opplæringen.

  1. Installer riktig .NET SDK for operativsystemet.
  2. Åpne ressursen på denne plasseringen, og følg alle trinnene du ser der.

Eksempel på skjermbilder av programmet fra denne opplæringen følger:

Skjermbilde fra en nettleser som viser eksempelappen på Azure-nettsteder.

Skjermbilde fra en nettleser som viser eksempelnettstedet graphql som gir resultatene av en spørring, Produktantall etter leverandører.

Neste trinn