Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet exemple .NET 6.0 montre comment effectuer des opérations de données communes à l’aide de l’API Web de Dataverse.
Cet exemple utilise le code d’assistance commun dans la Bibliothèque de classes WebAPIService (C#).
Note
Cet exemple implémente les opérations Dataverse et de sortie de la console détaillées dans Exemple de données de requête d'API Web et utilise les constructions C# courantes décrites dans Exemples de l'API Web (C#).
Conditions préalables
Les éléments suivants sont requis pour générer et exécuter cet exemple :
- Microsoft Visual Studio 2022.
- Accès à Dataverse avec les privilèges d′exécution des opérations de données.
Comment exécuter cet exemple
Clonez ou téléchargez le référentiel Exemples PowerApps.
Localisez le dossier /dataverse/webapi/C#-NETx/QueryData/.
Ouvrir le fichier
QueryData.slnen utilisant Visual Studio 2022Modifiez le fichier
appsettings.jsonpour définir les valeurs de propriété suivantes :Property Instructions UrlURL pour votre environnement. Remplacez la valeur https://yourorg.api.crm.dynamics.comde l’espace réservé avec la valeur de votre environnement. Voir Afficher les ressources pour les développeurs pour trouver ça.UserPrincipalNameRemplacez la valeur you@yourorg.onmicrosoft.comde l’espace réservé avec la valeur UPN pour accéder à l’environnement.PasswordRemplacez la valeur yourPasswordde l’espace réservé avec le mot de passe que vous utilisez.Enregistrer le fichier
appsettings.jsonAppuyez sur F5 pour exécuter l’exemple.
Code
Le code de cet exemple est ici : PowerApps-Samples/dataverse/webapi/C#-NETx/QueryData/Program.cs
Montre ce qui suit
Cet exemple comporte 11 régions :
Section 0 : Créer des enregistrements à interroger
Opérations : Créez 1 enregistrement account avec 9 enregistrements contact associés. Chaque contactdispose de 3 enregistrements task associés.
Ce sont les données qui seront utilisées dans cet exemple.
Section 1 : Sélection des propriétés spécifiques
Opérations :
- Utiliser
$selectpar rapport à une entité de contact pour obtenir les propriétés souhaitées. - L’inclusion d’annotations permet d’accéder à des valeurs formatées avec l’annotation
@OData.Community.Display.V1.FormattedValue
Section 2 : Utilisation des fonctions de requête
Opérations :
- Utilisation des fonctions de requête standard (
contains,endswith,startswith) pour filtrer les résultats. - Utilisation des fonctions de requête Dataverse (
LastXhours,Last7Days,Today,Between,In) - Utilisation d’opérateurs de filtrage et d’opérateurs logiques (
eq,ne,gt,and,or) - Définir la priorité à l’aide de parenthèses
((criteria1) and (criteria2)) or (criteria3)
Section 3 : Classement et alias
Opérations :
- Utilisation de
$orderby - Utilisation d’alias paramétrés (
?@p1=fullname) avec$filteret$orderby
Section 4 : Limiter et compter les résultats
Opérations :
- Limiter les résultats en utilisant
$top. - Obtenez une valeur de comptage en utilisant
$count.
Section 5 : Pagination
Opérations :
- Utilisez l’en-tête de demande
Prefer: odata.maxpagesizepour limiter le nombre de lignes renvoyées. - Utilisez l’url renvoyée avec l’annotation
@odata.nextLinkpour récupérer l’ensemble d’enregistrements suivant.
Section 6 : Développement des résultats
Opérations :
-
$expandavec propriétés de navigation à valeur unique. -
$expandavec propriété partenaire. -
$expandavec propriétés de navigation à valeur de collection. -
$expandavec plusieurs types de propriétés de navigation dans une seule requête. -
$expandimbriqué. -
$expandimbriqué avec des propriétés de navigation à valeur unique et valeur de collection.
Section 7 : Agréger les résultats
Opérations : Utiliser $apply=aggregate avec average, sum, min, & max.
Section 8 : Requêtes FetchXML
Opérations :
- Envoi de requêtes à l’aide de fetchXml à l’aide de
?fetchXml= - Pagination à l’aide des attributs
pageetcount.
Section 9 : Utiliser des requêtes prédéfinies
Opérations :
- Utiliser
{entitysetname}?savedQuery={savedqueryid}pour renvoyer les résultats d’une requête enregistrée (vue système) - Utiliser
{entitysetname}?userQuery={userquery}pour renvoyer les résultats d’une requête utilisateur (vue enregistrée)
Section 10 : Supprimer des exemples d’enregistrements
Opérations : une référence à chaque enregistrement créé dans cet exemple a été ajoutée à une liste lors de sa création. Dans cet exemple, les enregistrements sont supprimés à l’aide d’une opération $batch.
Voir aussi
Interroger les données à l′aide de l′API Web
Exemples de données de requête d′API Web
Utiliser l’API web DataverseExemple d′opérations de base de l′API web (C#)
Exemple d’opérations conditionnelles de l’API web (C#)
Exemple de fonctions et d’actions de l’API web (C#)
Exemple d’opérations de schéma de table de l’API web (C#)
Exemple d′opérations parallèles de l′API web WebApiService (C#)
Exemple d’opérations parallèles d’API web avec des composants de flux de données TPL (C#)