Démarrage rapide : exécuter une requête SDK pour .NET (C#)

Cette rubrique montre comment commencer à utiliser les classes dans le SDK pour les assemblys .NET dans le but d’utiliser les données commerciales de Microsoft Dataverse. Vous allez créer une application de console minimale pour vous connecter au service d’organisation de votre environnement en utilisant la classe ServiceClient pour exécuter une opération de service web.

Votre candidature appellera le Méthode IOrganizationService.Execute passer une instance du WhoAmIRequest classe. Le résultat renvoyé par le service Web est un fichier rempli WhoAmIResponse.UserId valeur qui est l’identifiant unique de votre Dataverse compte utilisateur du système.

Notes

Cet exemple de démarrage rapide n’inclut pas la gestion d’exception par souci de concision. Il s’agit d’un exemple de code minimum de ce dont vous avez besoin pour vous connecter et utiliser le SDK pour .NET.

Vous pouvez obtenir l’exemple de code complet sur GitHub GetStarted. Consultez le README du programme pour plus de détails.

Conditions préalables

  • Visual Studio (2022 ou version ultérieure)
  • Connexion Internet
  • Identifiants de connexion d’un compte utilisateur du système Dataverse pour l’environnement cible
  • Adresse URL vers l’environnement Dataverse auquel vous voulez vous connecter
  • Présentation de base du langage Visual C #

Créer un projet Visual Studio

  1. Créez un projet d’application de console .NET. Pour ce projet, nous utilisons Visual Studio 2022 et ciblant .NET 6.

    Démarrer un projet d’application de console.

  2. Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le projet que vous avez créé, puis sélectionnez Gérer les packages NuGet… dans le menu contextuel.

    Ajouter un package NuGet.

  3. Accédez à la dernière version du package Microsoft.PowerPlatform.Dataverse.Client NuGet et installez-la.

    Installez le package Microsoft.PowerPlatform.Dataverse.Client NuGet.

Notes

Vous êtes invité à accepter les modifications de la version préliminaire, sélectionnez ensuite J’accepte dans la boîte de dialogue Acceptation de la licence.

Ajouter un code d’application

  1. Dans Explorateur de solutions, double-cliquez sur Program.cs pour modifier ce fichier. Remplacez le contenu du fichier par le code ci-dessous.

    using Microsoft.Crm.Sdk.Messages;
    using Microsoft.PowerPlatform.Dataverse.Client;
    using Microsoft.Xrm.Sdk;
    
    class Program
    {
       // TODO Enter your Dataverse environment's URL and logon info.
       static string url = "https://yourorg.crm.dynamics.com";
       static string userName = "you@yourorg.onmicrosoft.com";
       static string password = "yourPassword";
    
       // This service connection string uses the info provided above.
       // The AppId and RedirectUri are provided for sample code testing.
       static string connectionString = $@"
       AuthType = OAuth;
       Url = {url};
       UserName = {userName};
       Password = {password};
       AppId = 51f81489-12ee-4a9e-aaae-a2591f45987d;
       RedirectUri = app://58145B91-0C36-4500-8554-080854F2AC97;
       LoginPrompt=Auto;
       RequireNewInstance = True";
    
       static void Main()
       {
          //ServiceClient implements IOrganizationService interface
          IOrganizationService service = new ServiceClient(connectionString);
    
          var response = (WhoAmIResponse)service.Execute(new WhoAmIRequest());
    
          Console.WriteLine($"User ID is {response.UserId}.");
    
    
          // Pause the console so it does not close.
          Console.WriteLine("Press the <Enter> key to exit.");
          Console.ReadLine();
       }
    }
    
  2. Modifiez les valeurs du url, userName, et password comme l’indique le // TODO commentaire de code.

    Notes

    L’URL de votre environnement dans l’application web héritée se trouve sous Paramètres > Personnalisation > Ressources du développeur ou dans Power Apps Paramètres (icône d’engrenage) > Ressources du développeur.

    Même si cet exemple de code place les informations nom d’utilisateur/mot de passe dans le code pour plus de simplicité, d’autres exemples de code utilisent l’approche recommandée consistant à demander ces informations ou à les stocker dans un fichier App.config ou appsettings.json séparé.

    Les valeurs prises en charge pour AuthType sont répertoriées dans Paramètres de la chaîne de connexion.

Exécuter le programme

Appuyez sur la touche F5 pour exécuter le programme. Le résultat doit ressembler à ce qui suit :

User ID is 969effb0-98ae-478c-b547-53a2968c2e75
Press any key to exit.

Utilisez les méthodes de l’interface IOrganizationService

Notez que le Dataverse.Client.ServiceClient ce programme utilise implémente l’ IOrganizationService Interface qui inclut le Exécuter la méthode.

Pour voir et comprendre un peu mieux l’ IOrganizationService interface, essayez ceci :

  1. Accédez à l’article de référence sur la classe WhoAmIRequest.

  2. Copiez l’exemple de méthode de cet article. Il ressemble à ça :

    /// <summary>
    /// Outputs the data returned from the WhoAmI message
    /// </summary>
    /// <param name="service">Authenticated client implementing the IOrganizationService interface</param>
    static void WhoAmIExample(IOrganizationService service) {
    
       var response = (WhoAmIResponse)service.Execute(new WhoAmIRequest());
    
       Console.WriteLine($"OrganizationId:{response.OrganizationId}");
       Console.WriteLine($"BusinessUnitId:{response.BusinessUnitId}");
       Console.WriteLine($"UserId:{response.UserId}");
    
    }
    

    Notez qu’il accepte une IOrganizationService instance de service comme paramètre.

  3. Collez cette WhoAmIExample méthode sous la Main méthode dans votre programme

  4. Remplacez la Main méthode de votre programme par ceci :

        static void Main()
     {
         //ServiceClient implements IOrganizationService interface
         IOrganizationService service = new ServiceClient(connectionString);
    
         WhoAmIExample(service: service);
    
         // Pause the console so it does not close.
         Console.WriteLine("Press the <Enter> key to exit.");
         Console.ReadLine();
     }
    
  5. Exécutez à nouveau l’exemple et vous devriez voir quelque chose comme :

    OrganizationId:883278f5-07af-45eb-a0bc-3fea67caa544
    BusinessUnitId:38e0dbe4-131b-e111-ba7e-78e7d1620f5e
    UserId:4026be43-6b69-e111-8f65-78e7d1620f5e
    Press the <Enter> key to exit.
    

Étapes suivantes

Maintenant que vous disposez d’un programme console simple qui se connecte à Dataverse, utilisez ce projet pour essayer d’autres méthodes et messages. Vous pouvez utiliser ce projet d’application de console Quick Start pour effectuer des tests ad hoc.

Essayez un autre méthodes de l’interface IOrganizationService

Conseil

Dans notre documentation, vous pouvez trouver de nombreux exemples de méthodes comme celle-ci WhoAmIExample qui acceptent un IOrganizationService service paramètre.

Essayez les exemples de ces méthodes IOrganizationService :

Essayer autres messages

Vous pouvez trouver d’autres messages que vous pouvez appeler à l’aide de la méthode Execute dans ces espaces de noms :

Découvrir comment travailler avec des données d’enregistrement

Les articles suivants expliquent comment utiliser les données d’entreprise dans Dataverse tableaux :

Découvrez nos exemples de code

Vous pouvez trouver un exemple de code SDK pour .NET dans notre référentiel GitHub à l’adresse PowerApps-Samples/dataverse/orgsvc.

Utiliser les extensions ServiceClient

En plus d’implémenter l’ interface IOrganizationService, ServiceClient offre des méthodes d’extension au-delà des méthodes de base définies par IOrganizationService et la possibilité d’activer la journalisation avec ILogger. En savoir plus sur ServiceClient

Notes

Pouvez-vous nous indiquer vos préférences de langue pour la documentation ? Répondez à un court questionnaire. (veuillez noter que ce questionnaire est en anglais)

Le questionnaire vous prendra environ sept minutes. Aucune donnée personnelle n’est collectée (déclaration de confidentialité).