DataverseClient Osztály
Magas szintű ügyfél a Microsoft Dataverse-műveletekhez.
Ez az ügyfél egy egyszerű, stabil felületet biztosít a Dataverse-környezetek webes API-val való kezeléséhez. A hitelesítést Azure Identitáson keresztül kezeli, és HTTP-műveleteket delegál egy belső OData-ügyfélnek.
Főbb képességek:
OData CRUD-műveletek: rekordok létrehozása, olvasása, frissítése, törlése
SQL-lekérdezések: írásvédett SQL végrehajtása webes API-paraméteren
?sqlkeresztülTábla metaadatai: egyéni táblák létrehozása, vizsgálata és törlése; oszlopok létrehozása és törlése
Fájlfeltöltések: fájlok feltöltése fájloszlopokra adattömb-támogatással
Megjegyzés:
Az ügyfél lazán inicializálja a belső OData-ügyfelet az első használatkor, lehetővé téve a könnyű konstrukciót azonnali hálózati hívások nélkül.
Megjegyzés:
A Dataverse Web API-val kommunikáló összes metódus
HttpError nem sikeres
HTTP-válaszok (pl. 401, 403, 404, 429, 500). Egyéni módszer
A dokumentum csak tartományspecifikus kivételeket tartalmaz.
A műveletek névterekbe vannak rendezve:
client.records– rekordok létrehozása, frissítése, törlése és lekérése (egy- vagy többoldalas lekérdezések)client.query– lekérdezési és keresési műveletekclient.tables– tábla- és oszlop metaadatok kezeléseclient.files– fájlfeltöltési műveletekclient.dataframe– pandas DataFrame-burkolók a CRUD rekordhozclient.batch– több művelet kötegelése egyetlen HTTP-kérelembe
A v0 bétametenek (client.createstb client.query_sql.) eltávolítása az 1.0 GA-ban megtörtént. Az egyik hívás most egy üzenettel jelenik AttributeError meg, amely a GA-csere és a kódmod parancs elnevezését tartalmazza – korábban ezek a hívások nem adták meg a migrálási tippet, ezért a félig migrált kód hibakeresése AttributeError fájdalmas volt. Lásd: _REMOVED_BETA_METHODS.
Az ügyfél támogatja Python környezetkezelő protokollját az automatikus erőforrás-törléshez és a HTTP-kapcsolatkészletezéshez:
Konstruktor
DataverseClient(base_url: str, credential: TokenCredential, config: DataverseConfig | None = None, *, context: OperationContext | None = None)
Paraméterek
| Name | Description |
|---|---|
|
base_url
Kötelező
|
A Dataverse-környezet URL-címe, például |
|
credential
Kötelező
|
Azure Identity hitelesítő adatok hitelesítéshez. |
|
config
|
DataverseConfig vagy
None
A nyelv, az időtúllépések és az újrapróbálkozások opcionális konfigurációja. Ha nincs megadva, a rendszer betölti az alapértelmezett értékeket.from_env Alapértelmezett érték: None
|
|
context
Kötelező
|
OperationContext vagy
None
Nem kötelező hívó által definiált környezeti objektum hozzáfűzve a kimenő |
Csak kulcsszavas paraméterek
| Name | Description |
|---|---|
|
context
|
Alapértelmezett érték: None
|
Példák
Ajánlott – környezetkezelő (http-kapcsolatkészletezést tesz lehetővé):
from azure.identity import InteractiveBrowserCredential
from PowerPlatform.Dataverse.client import DataverseClient
credential = InteractiveBrowserCredential()
with DataverseClient("https://org.crm.dynamics.com", credential) as client:
record_id = client.records.create("account", {"name": "Contoso Ltd"})
client.records.update("account", record_id, {"telephone1": "555-0100"})
# Session closed, caches cleared automatically
Manuális életciklus:
client = DataverseClient("https://org.crm.dynamics.com", credential)
try:
record_id = client.records.create("account", {"name": "Contoso Ltd"})
finally:
client.close()
Metódusok
| close |
Zárja be az ügyfelet, és engedje fel az erőforrásokat. Bezárja a HTTP-munkamenetet (ha van ilyen), törli a belső gyorsítótárakat, és bezártként jelöli meg az ügyfelet. Nyugodtan hívhat többször is. A zárás után minden művelet fel fog emelkedni RuntimeError. Az ügyfél környezetkezelőként való használatakor automatikusan meghívva. Example:
|
| flush_cache |
Gyorsítótárazott ügyfél metaadatainak vagy állapotának kiürítése. |
close
Zárja be az ügyfelet, és engedje fel az erőforrásokat.
Bezárja a HTTP-munkamenetet (ha van ilyen), törli a belső gyorsítótárakat, és bezártként jelöli meg az ügyfelet. Nyugodtan hívhat többször is. A zárás után minden művelet fel fog emelkedni RuntimeError.
Az ügyfél környezetkezelőként való használatakor automatikusan meghívva.
Example:
client = DataverseClient(base_url, credential)
try:
client.records.create("account", {"name": "Contoso"})
finally:
client.close()
close() -> None
flush_cache
Gyorsítótárazott ügyfél metaadatainak vagy állapotának kiürítése.
flush_cache(kind) -> int
Paraméterek
| Name | Description |
|---|---|
|
kind
Kötelező
|
A gyorsítótár típusa a kiürítéshez. Jelenleg támogatott értékek:
A jövőbeli típusokat (pl. |
Válaszok
| Típus | Description |
|---|---|
|
Az eltávolított gyorsítótárbejegyzések száma. |
Példák
Törölje a picklist-gyorsítótárat:
removed = client.flush_cache("picklist")
print(f"Cleared {removed} cached picklist entries")