Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieser Beispielcode zeigt, wie der Suchdienst mit der CrmServiceClient.DiscoverGlobalOrganizations-Methode verwendet wird.
Anmerkung
Dieses Beispiel ist auf .NET Full Framework beschränkt. Es gibt ein neueres Beispiel, das mit .NET Core kompatibel ist, welches die Methode DataverseClient.ServiceClient.DiscoverOnlineOrganizationsAsync verwendet. Siehe Beispiel: Globaler Suchdienst (C#).
Wie man dieses Beispiel ausführt
Dieses Beispiel öffnet keinen Dialog, um Sie nach Verbindungsinformationen zu fragen.
Wenn Sie Werte in den App.config-Verbindungszeichenfolgen festgelegt haben, werden diese verwendet. Andernfalls müssen Sie username und password Variablen in der SampleProgram.Main-Methode festlegen.
Funktionsweise:
Dieses Beispiel verwendet die SDK-Assembly CrmServiceClient, um den globalen Suchdienst mit den Anmeldeinformationen eines Benutzers abzufragen, um zu bestimmen, mit welchen Umgebungen er eine Verbindung herstellen kann.
Wenn eine oder mehrere Umgebungen zurückgegeben werden, fordert das Beispiel den Benutzer auf, eine auszuwählen und verwendet dann ein WhoAmIRequest, um das SystemUser.UserId für diese Umgebung zurückzugeben.
Wie dieses Beispiel funktioniert
Um das unter Was macht dieses Beispiel, beschriebene Szenario zu simulieren, geht das Beispiel wie folgt vor:
Einrichten
Dieses Beispiel erfordert keine spezielle Konfiguration, außer dass es einen gültigen Benutzernamen und ein gültiges Passwort für die Benutzeranmeldung gibt.
Wenn Sie das regionale Rechenzentrum kennen, in dem sich Ihre Umgebungen befinden, wird das Beispiel schneller laufen, wenn Sie diesen Wert in Zeile 40 der Datei SampleProgram.cs festlegen.
In SampleMethods.cs gibt es eine Clouds-Enumeration für jedes der bekannten globalen Suchzentren. Jedes Enumerationsmitglied ist mit einer Description-Notation versehen. Bei allen diesen Mitgliedern außer Unknown ist die URL für den globalen Suchdienst als Beschreibung festgelegt.
Demonstrieren
Unter Verwendung der Benutzer-Anmeldeinformationen und des
cloud-Wertes verwendet das Programm die statischeGetAllOrganizations-Methode, um alle bekannten Umgebungen für den Benutzer abzurufen.Das
GetAllOrganizations-Verfahren erkennt, ob dercloud-Wert aufCloud.Unknowngesetzt ist. Wenn sie für dieses Mitglied festgelegt ist, wählt diese Methode die kommerzielleCloud-Enumeration aus, und ruft alle Umgebungen ab, die mithilfe der statischenGetOrganizationsForCloud-Methode gefunden werden.Wenn ein bestimmtes Rechenzentrum festgelegt ist, ruft
GetAllOrganizationseinfachGetOrganizationsForCloudmit diesen Werten an.Die
GetOrganizationsForCloud-Methode extrahiert die Suchdienst-URL der Cloud aus derDescription-Dekoration des Mitglieds, und verwendet sie zusammen mit den Anmeldeinformationen des Benutzers, um dieDiscoverGlobalOrganizations-CrmServiceClient-Hilfsnachricht auszuführen.Ein
System.ServiceModel.Security.SecurityAccessDeniedExceptionwird erwartet, wenn der Benutzer keine Umgebungen in einem bestimmten Rechenzentrum hat.Wenn Umgebungen nach der
GetAllOrganizations-Methode zurückgegeben werden, werden sie in der Konsole aufgelistet und Sie werden aufgefordert, eine durch Eingabe einer Zahl auszuwählen. Wenn Ihre Auswahl gültig ist, werden die ausgewählten Umgebungsdaten verwendet, um einenWhoAmIRequestauszuführen und denSystemUser.UserIdfür den Benutzer in dieser Umgebung zurückzugeben.
Bereinigung
Dieses Beispiel erstellt keine Datensätze. Keine Bereinigung ist erforderlich.
Siehe auch
Benutzerorganisationen ermitteln
Beispiel: Globaler Suchdienst (C#)
Beispiel: Blazor WebAssembly mit globaler Ermittlung