FetchXmlQuery Klass
Inert FetchXML-frågeobjekt. Ingen HTTP-begäran görs förrän execute eller execute_pages anropas.
Hämtas via client.query.fetchxml(xml).
Konstruktor
FetchXmlQuery(xml: str, entity_name: str, client: DataverseClient)
Parametrar
| Name | Description |
|---|---|
|
xml
Obligatorisk
|
Avskalad, välformad FetchXML-sträng. |
|
entity_name
Obligatorisk
|
Namn på entitetsschema från elementet |
|
client
Obligatorisk
|
Överordnad DataverseClient. |
Metoder
| execute |
Kör FetchXML-frågan och returnera alla resultat som en QueryResult. Blockering – hämtar alla sidor i förväg och innehåller varje post i minnet innan den returneras. Enkelt för små till medelstora resultatuppsättningar; använd execute_pages när resultatuppsättningen kan vara stor eller om du vill bearbeta poster när de tas emot. Example:
|
| execute_pages |
Ge lättja en QueryResult per HTTP-sida. Direktuppspelning – varje iteration utlöser en HTTP-begäran och ger en sida. Föredra framför execute när:
One-shot – iterera inte mer än en gång. Example:
|
execute
Kör FetchXML-frågan och returnera alla resultat som en QueryResult.
Blockering – hämtar alla sidor i förväg och innehåller varje post i minnet innan den returneras. Enkelt för små till medelstora resultatuppsättningar; använd execute_pages när resultatuppsättningen kan vara stor eller om du vill bearbeta poster när de tas emot.
Example:
rows = client.query.fetchxml(xml).execute()
df = rows.to_dataframe()
execute() -> QueryResult
Returer
| Typ | Description |
|---|---|
|
Alla matchande poster på alla sidor. |
execute_pages
Ge lättja en QueryResult per HTTP-sida.
Direktuppspelning – varje iteration utlöser en HTTP-begäran och ger en sida. Föredra framför execute när:
Resultatuppsättningen kan vara stor och du vill inte ha alla poster i minnet samtidigt.
Du vill ha tidig avslut: sluta iterera när du hittar det du behöver och de återstående HTTP-tur och retur-resorna hoppas över automatiskt.
Du behöver förloppsrapportering per sida eller batchbaserade nedströmsskrivningar.
One-shot – iterera inte mer än en gång.
Example:
for page in client.query.fetchxml(xml).execute_pages():
process(page.to_dataframe())
execute_pages() -> Iterator[QueryResult]
Returer
| Typ | Description |
|---|---|
|
Iterator för objekt per sida QueryResult . |