Exemple : utilisez CrmServiceClient pour accéder au service de découverte global
Cet exemple de code montre comment utiliser le service de découverte avec la CrmServiceClient.DiscoverGlobalOrganizations Method.
Notes
Cet exemple est limité à .NET Full Framework. Il existe un exemple plus récent compatible avec .NET Core utilisant la Dataverse.Client.ServiceClient.DiscoverOnlineOrganizationsAsync Method. Voir Exemple : service de découverte global (C#).
Comment exécuter cet exemple
Cet exemple n’ouvre pas de boîte de dialogue vous invitant à saisir les informations de connexion.
Si vous avez défini les valeurs dans les chaînes de connexion App.config, celles-ci sont utilisées. Sinon, définissez les variables username
et password
dans la méthode SampleProgram.Main
.
En quoi consiste cet exemple :
Cet exemple utilise l′assembly SDK CrmServiceClient
pour interroger le service de découverte global avec les informations d′identification d′un utilisateur afin de déterminer les environnements auxquels il peut se connecter.
Si un ou plusieurs environnements sont renvoyés, l’exemple invite l’utilisateur à en choisir un, puis à utiliser une WhoAmIRequest
pour renvoyer le SystemUser.UserId
pour cet environnement.
Utiliser cet exemple
Afin de simuler le scénario décrit dans En quoi consiste cet exemple, l’exemple procède comme suit :
Installation
Cet exemple ne requiert aucune configuration spécifique hormis qu’il y ait un nom et un mot de passe d’identification d’utilisateur valides à utiliser.
Si vous connaissez le centre de données régional dans lequel se trouve vos environnements, l’exemple s’exécute plus rapidement si vous définissez cette valeur sur la ligne 40 du fichier SampleProgram.cs.
Dans SampleMethods.cs, il existe une énumération Clouds
pour chaque centre de découverte global connu. Chaque membre de l’énumération est accompagné d’une notation de type Description
. Tous ces membres à l′exception de Unknown
utilisent l′URL du service de découverte global comme description.
Démontrer
À l’aide des informations d’identification de l’utilisateur et de la valeur
cloud
, le programme utilise la méthode statiqueGetAllOrganizations
pour récupérer tous les environnements connus pour l’utilisateur.La méthode
GetAllOrganizations
détecte si la valeurcloud
est définie surCloud.Unknown
. Si elle est définie sur ce membre, cette méthode choisit l′énumérationCloud
et récupère tous les environnements trouvés à l′aide de la méthode statiqueGetOrganizationsForCloud
.Si un centre de données spécifique est défini,
GetAllOrganizations
appelle simplementGetOrganizationsForCloud
avec ces valeurs.La méthode
GetOrganizationsForCloud
extrait l′URL du service de découverte du cloud de la décorationDescription
du membre et l′utilise avec les informations d′identification de l′utilisateur pour exécuter le message d′assistance CrmServiceDiscoverGlobalOrganizations
.Une
System.ServiceModel.Security.SecurityAccessDeniedException
est prévue lorsque l’utilisateur n’a pas d’environnement dans un centre de données spécifique.Si des environnements sont renvoyés par la méthode
GetAllOrganizations
, ils sont répertoriés dans la console et vous êtes invité à en choisir un en saisissant un numéro. Si votre choix est valide, les données de l’environnement sélectionnées sont utilisées pour exécuter uneWhoAmIRequest
et renvoyerSystemUser.UserId
pour l’utilisateur dans cet environnement.
Nettoyer
Cet exemple ne crée aucun enregistrement. Aucun enregistrement n’est requis.
Voir aussi
Découvrir les organisations d’utilisateur
Exemple : service de découverte global (C #)
Exemple : Blazor WebAssembly avec service de découverte global
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é).