Schnellstart: Eine SDK für .NET-Anforderung ausführen (C#)
Dieses Thema zeigt Ihnen, wie Sie mit der Verwendung von Klassen in SDK für .NET-Assemblys beginnen, mit denen Sie mir Microsoft Dataverse Geschäftsdaten arbeiten können. Sie erstellen eine minimale Konsolenanwendung, um mithilfe der ServiceClient Klasse eine Verbindung zum Organisationsservice Ihrer Umgebung herzustellen und eine Webdienstoperation auszuführen.
Ihre Anwendung ruft die IOrganizationService.Execute-Methode auf und übergibt eine Instanz der WhoAmIRequest Klasse. Das vom Webdienst zurückgegebene Ergebnis ist ein ausgefüllter WhoAmIResponse.UserId Wert, der die eindeutige Kennung Ihres Dataverse Systembenutzerkontos darstellt.
Hinweis
Dieses Schnellstart-Beispiel enthält aus Gründen der Kürze keine Ausnahmebehandlung. Dies ist ein Beispiel mit minimalem Code dafür, was Sie benötigen, um eine Verbindung mit dem SDK für .NET herzustellen und es zu verwenden.
Das vollständige Codebeispiel erhalten Sie von GitHub GetStarted. Weitere Informationen finden Sie in der README-Datei des Programms.
Anforderungen
- Visual Studio (2022 oder höher)
- Internetverbindung
- Anmeldedaten von einem Dataverse Systembenutzerkonto für die Zielumgebung
- URL-Adresse zur Dataverse-Umgebung, mit der Sie eine Verbindung herstellen möchten
- Grundlegendes Verständnis der Visual C#-Sprache
Visual Studio-Projekt erstellen
Erstellen Sie ein neues .NET-Konsolenanwendungsprojekt. Für dieses Projekt verwenden wir Visual Studio 2022 und zielen auf .NET 6 ab.
Klicken Sie im Lösungs-Explorer mit der rechten Maustaste auf das von Ihnen erstellte Projekt und wählen Sie im Kontextmenü NuGet-Pakete verwalten... aus.
Navigieren Sie zur neuesten Version des
Microsoft.PowerPlatform.Dataverse.Client
NuGet-Pakets und installieren Sie es.
Hinweis
Sie werden aufgefordert, die Vorschauänderungen zu bestätigen und dann Ich akzeptiere in dem Lizenzakzeptanz-Dialog auszuwählen.
Anwendungscode hinzufügen
Im Lösungs-Explorer klicken Sie doppelt auf Program.cs, um diese Datei zu bearbeiten. Ersetzen Sie den Inhalt der Datei durch den unten gezeigten Code.
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(); } }
Ändern Sie die Werte für
url
,userName
undpassword
wie im Codekommentar// TODO
angegeben.Hinweis
Sie finden Ihre Umgebungs-URL in der Legacy-Webanwendung unter Einstellungen > Anpassung > Entwicklerressourcen oder in Power Apps Einstellungen (Zahnradsymbol) > Entwicklerressourcen.
Während dieses Codebeispiel die Informationen zu Benutzername/Kennwort der Einfachheit halber in den Code einfügt, verwenden andere Codebeispiele den empfohleneren Ansatz, diese Informationen abzufragen oder sie in einer separaten App.config- oder appsettings.json-Datei zu speichern.
Sie finden die unterstützten Werte für AuthType unter Verbindungszeichenkettenparameter.
Ausführen des Programms
Drücken Sie F5, um das Programm auszuführen. Die Ausgabe sollte in etwa so aussehen:
User ID is 969effb0-98ae-478c-b547-53a2968c2e75
Press any key to exit.
Verwenden Sie die IOrganizationService-Schnittstellenmethoden
Beachten Sie, dass der Dataverse.Client.ServiceClient, den dieses Programm verwendet, die IOrganizationService-Schnittstelle implementiert, die die Methode ausführen enthält.
Um die IOrganizationService
Schnittstelle etwas besser zu sehen und zu verstehen, versuchen Sie Folgendes:
Gehen Sie zum Referenzartikel für die WhoAmIRequest-Klasse.
Kopieren Sie die Beispielmethode aus diesem Artikel. Normalerweise sieht es so aus:
/// <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}"); }
Beachten Sie, dass eine
IOrganizationService
Dienstinstanz als Parameter akzeptiert wird.Fügen Sie dieser
WhoAmIExample
Methode unterhalb derMain
Methode in Ihr Programm einErsetzen Sie die
Main
Methode in Ihrem Programm durch diese: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(); }
Führen Sie das Beispiel erneut aus und Sie sollten etwa Folgendes sehen:
OrganizationId:883278f5-07af-45eb-a0bc-3fea67caa544 BusinessUnitId:38e0dbe4-131b-e111-ba7e-78e7d1620f5e UserId:4026be43-6b69-e111-8f65-78e7d1620f5e Press the <Enter> key to exit.
Nächste Schritte
Da Sie nun über ein einfaches Konsolenprogramm verfügen, das eine Verbindung zu Dataverse herstellt, können Sie dieses Projekt verwenden, um andere Methoden und Nachrichten auszuprobieren. Mit diesem Quick Start-Konsolenanwendungsprojekt können Sie Ad-hoc-Tests durchführen.
Testen Sie andere IOrganizationService-Schnittstellenmethoden
Tipp
In unserer Dokumentation finden Sie viele Beispielmethoden wie diese WhoAmIExample
, die einen IOrganizationService service
Parameter akzeptieren.
Probieren Sie die Beispiele für diese IOrganizationService-Methoden Methoden aus:
Testen sie andere Meldungen
Weitere Nachrichten, die Sie mit der Execute-Methode aufrufen können, finden Sie in den folgenden Namensräumen:
Erfahren Sie, wie Sie mit Datensätzen arbeiten
In den folgenden Artikeln wird erläutert, wie Sie mit Geschäftsdaten in Dataverse Tabellen arbeiten:
- Entitätsklassenvorgänge mithilfe des SDK für .NET
- Tabellenzeilen mit dem SDK für .NET erstellen
- Abrufen einer Tabellenzeile über die SDK für .NET
- Aktualisieren und Löschen von Tabellenzeilen über die SDK für .NET
- Zuordnen und Aufheben der Zuordnung von Tabellenzeilen über das SDK für .NET
Entdecken Sie unsere Codebeispiele
Sie finden SDK für .NET-Beispielcode in unserem GitHub-Repository unter PowerApps-Samples/dataverse/orgsvc.
Verwenden Sie ServiceClient-Erweiterungen
Zusätzlich zur Implementierung der IOrganizationService-Schnittstelle bietet ServiceClient Erweiterungsmethoden über die durch IOrganizationService
definierten Kernmethoden hinaus und die Möglichkeit, die Protokollierung mit ILogger zu aktivieren. Weitere Informationen zur Verwendung des ServiceClient
Hinweis
Können Sie uns Ihre Präferenzen für die Dokumentationssprache mitteilen? Nehmen Sie an einer kurzen Umfrage teil. (Beachten Sie, dass diese Umfrage auf Englisch ist.)
Die Umfrage dauert etwa sieben Minuten. Es werden keine personenbezogenen Daten erhoben. (Datenschutzbestimmungen).