Pastaba.
Prieigai prie šio puslapio reikalingas įgaliojimas. Galite bandyti prisijungti arba pakeisti katalogus.
Prieigai prie šio puslapio reikalingas įgaliojimas. Galite bandyti pakeisti katalogus.
Galite susieti atskirus įrašus lentelės eilutėse su kitais įrašais, naudodami ryšius, esančius tarp lentelės aprašų. OData ryšiai išreiškiami kaip naršymo ypatybės.
Galite sužinoti, kokios naršymo ypatybės yra $metadata tarnybos dokumente. Žr. Žiniatinklio API naršymo ypatybės. Esamų "Dataverse" lentelių ieškokite žiniatinklio API objekto tipo nuorodoje, kiekvienam objekto tipui žr. išvardytas vienos reikšmės ir rinkinio reikšmės naršymo ypatybes.
Šioje lentelėje aprašomi trys ryšių tipai tarp "Dataverse" lentelių.
| Tipas | Aprašą | Pavyzdys |
|---|---|---|
| Vienas su daugeliu | Su vienu įrašu gali būti susieti keli įrašai. |
Kliento įraše gali būti daug kontaktų įrašų rinkinio vertės naršymo ypatybėjecontact_customer_accounts. |
| Daugelis su vienu | Su vienu įrašu galima susieti daug įrašų. Daugelis su vienu yra veidrodinis santykių "vienas su daugeliu" atvaizdas. Yra tik vienas ryšys. |
Keli kontaktų įrašai gali būti susieti su vienu kliento įrašu naudojant vienos reikšmės naršymoparentcustomerid_account ypatybę. |
| Daugelis su daugeliu | Daugelis įrašų gali būti susieti su daugeliu įrašų. | Kiekviename saugos vaidmenyje (vaidmenyje) gali būti nuorodų į sistemos vartotojo apibrėžimą. Abi šios lentelės turi rinkinio vertės naršymo systemuserroles_association ypatybę. |
Vienos reikšmės naršymo ypatybių naudojimas
Esamiems įrašams, esantiems ryšio "vienas su daugeliu " arba " daugelis su vienu" pusėje, galite susieti įrašą nustatydami Uri nuorodą į kitą įrašą. Paprasčiausias ir dažniausias būdas tai padaryti yra pridėti komentarą @odata.bind prie vienos reikšmės naršymo ypatybės pavadinimo ir nustatyti reikšmę kaip Uri prie kito užklausos PATCH įrašo.
Susieti su vienos reikšmės naršymo ypatybe
Pavyzdžiui, norėdami susieti kontakto įrašą su klientu naudodami vienos reikšmės naršymo parentcustomerid_account ypatybę:
Prašymą:
PATCH [Organization Uri]/api/data/v9.2/contacts(00aa00aa-bb11-cc22-dd33-44ee44ee44ee) HTTP/1.1
If-Match: *
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
Accept: application/json
{
"parentcustomerid_account@odata.bind": "accounts(ce9eaaef-f718-ed11-b83e-00224837179f)"
}
Atsakas:
HTTP/1.1 204 NoContent
OData-Version: 4.0
OData-EntityId: [Organization Uri]/api/data/v9.2/contacts(00aa00aa-bb11-cc22-dd33-44ee44ee44ee)
Kaip aprašyta skyriuje Susieti lentelės eilutes kuriant, nauji įrašai taip pat gali būti susieti su esamais įrašais.
Atsieti nuo vienos reikšmės naršymo ypatybės
Jei norite atsieti, galite tiesiog nustatyti reikšmę į nulį.
Prašymą:
PATCH [Organization Uri]/api/data/v9.2/contacts(00aa00aa-bb11-cc22-dd33-44ee44ee44ee) HTTP/1.1
If-Match: *
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
Accept: application/json
{
"parentcustomerid_account@odata.bind": null
}
Atsakas:
HTTP/1.1 204 NoContent
OData-Version: 4.0
OData-EntityId: [Organization Uri]/api/data/v9.2/contacts(00aa00aa-bb11-cc22-dd33-44ee44ee44ee)
Tokiu būdu atsiejant nereikia įtraukti @odata.bind anotacijos. Galite tiesiog naudoti vienos reikšmės naršymo ypatybės pavadinimą:
Prašymą:
PATCH [Organization Uri]/api/data/v9.2/contacts(00aa00aa-bb11-cc22-dd33-44ee44ee44ee) HTTP/1.1
If-Match: *
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
Accept: application/json
{
"parentcustomerid_account": null
}
Atsakas:
HTTP/1.1 204 NoContent
OData-Version: 4.0
OData-EntityId: [Organization Uri]/api/data/v9.2/contacts(00aa00aa-bb11-cc22-dd33-44ee44ee44ee)
Daugiau informacijos: Pagrindinis naujinimas
Kiti metodai
Yra ir kitų būdų, kaip pasiekti tuos pačius rezultatus, aprašytus anksčiau, naudojant vienos reikšmės naršymo ypatybes.
Norėdami nustatyti vienos reikšmės naršymo ypatybės reikšmęparentcustomerid_account, galite naudoti šią PUT užklausą:
Prašymą:
PUT [Organization Uri]/api/data/v9.2/contacts(00aa00aa-bb11-cc22-dd33-44ee44ee44ee)/parentcustomerid_account/$ref HTTP/1.1
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
Accept: application/json
{
"@odata.id": "[Organization URI]/api/data/v9.2/accounts(ce9eaaef-f718-ed11-b83e-00224837179f)"
}
Atsakas:
HTTP/1.1 204 NoContent
OData-Version: 4.0
Pastaba.
Pastaba: Nustatydami reikšmę .@odata.id
Norėdami pašalinti nuorodą, taip pat galite naudoti šią DELETE užklausą:
Prašymą:
DELETE [Organization Uri]/api/data/v9.2/contacts(00aa00aa-bb11-cc22-dd33-44ee44ee44ee)/parentcustomerid_account/$ref HTTP/1.1
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
Accept: application/json
Atsakas:
HTTP/1.1 204 NoContent
OData-Version: 4.0
Rinkinio reikšmių naršymo ypatybių naudojimas
Naudojant "OData", abi ryšio "daugelis su daugeliu" pusės turi rinkinio vertės naršymo ypatybes. Ryšiams "vienas su daugeliu" ir "daugelis su vienu" lentelėje "Vienas" yra rinkinio vertės naršymo ypatybė. Nėra skirtumo, kaip dirbate su bet kuriuo iš šių ryšių tipų, naudodami rinkinio reikšmių naršymo ypatybes. Šiame skyriuje aprašoma, kaip dirbti su rinkinio reikšmių naršymo ypatybėmis su bet kokio tipo ryšiais.
Įrašo įtraukimas į rinkinį
Toliau pateiktame pavyzdyje parodyta, kaip įtraukti kontakto įrašą į klientųcontact_customer_accounts rinkinį, kuris yra ryšio "vienas su daugeliu" dalis.
Prašymą:
POST [Organization Uri]/api/data/v9.2/accounts(ce9eaaef-f718-ed11-b83e-00224837179f)/contact_customer_accounts/$ref HTTP/1.1
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
Accept: application/json
{
"@odata.id": "[Organization URI]/api/data/v9.2/contacts(00aa00aa-bb11-cc22-dd33-44ee44ee44ee)"
}
Atsakas:
HTTP/1.1 204 NoContent
OData-Version: 4.0
Toliau pateiktame pavyzdyje parodyta, kaip įtraukti vaidmens įrašą į systemusersystemuserroles_association rinkinį, kuris yra ryšys daugelis su daugeliu.
Prašymą:
POST [Organization Uri]/api/data/v9.2/systemusers(34dcbaf5-f718-ed11-b83e-00224837179f)/systemuserroles_association/$ref HTTP/1.1
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
Accept: application/json
{
"@odata.id": "[Organization URI]/api/data/v9.2/roles(886b280c-6396-4d56-a0a3-2c1b0a50ceb0)"
}
Atsakas:
HTTP/1.1 204 NoContent
OData-Version: 4.0
Įrašo šalinimas iš rinkinio
Toliau pateiktame pavyzdyje parodyta, kaip pašalinti kontakto įrašą į klientųcontact_customer_accounts rinkinį, kuriame kontakto contactid reikšmė yra 00aa00aa-bb11-cc22-dd33-44ee44ee44ee.
Prašymą:
DELETE [Organization Uri]/api/data/v9.2/accounts(ce9eaaef-f718-ed11-b83e-00224837179f)/contact_customer_accounts(00aa00aa-bb11-cc22-dd33-44ee44ee44ee)/$ref HTTP/1.1
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
Accept: application/json
Atsakas:
HTTP/1.1 204 NoContent
OData-Version: 4.0
Ši užklausa taip pat veikia:
Prašymą:
DELETE [Organization Uri]/api/data/v9.2/accounts(ce9eaaef-f718-ed11-b83e-00224837179f)/contact_customer_accounts/$ref?$id=[Organization URI]/api/data/v9.2/contacts(00aa00aa-bb11-cc22-dd33-44ee44ee44ee) HTTP/1.1
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
Accept: application/json
Atsakas:
HTTP/1.1 204 NoContent
OData-Version: 4.0
Taip pat žr.
Žiniatinklio API pagrindinių operacijų pavyzdys (C#)
Žiniatinklio API pagrindinių operacijų pavyzdys (kliento pusės "JavaScript")
Operacijų atlikimas naudojant žiniatinklio API
Http užklausų kūrimas ir klaidų tvarkymas
Duomenų užklausa naudojant žiniatinklio API
Lentelės eilutės kūrimas naudojant žiniatinklio API
Lentelės eilutės nuskaitymas naudojant žiniatinklio API
Lentelės eilučių naujinimas ir naikinimas naudojant žiniatinklio API
Naudokite žiniatinklio API funkcijas
Žiniatinklio API veiksmų naudojimas
Paketinių operacijų vykdymas naudojant žiniatinklio API
Apsimetinėjimas kitu vartotoju naudojant žiniatinklio API
Sąlyginių operacijų atlikimas naudojant žiniatinklio API