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.
In diesem .NET 6.0-Beispiel wird veranschaulicht, wie allgemeine Datenvorgänge mithilfe der Dataverse-Web-API ausgeführt werden.
In diesem Beispiel wird der allgemeine Helfercode in der WebAPIService-Klassenbibliothek (C#) verwendet.
Anmerkung
Dieses Beispiel implementiert die Dataverse-Vorgänge sowie die Konsolenausgabe, die unter Web-API-Bedingte Vorgänge-Beispiel aufgeführt sind, und nutzt bekannte C#-Konstrukte, die in Web-API-Beispiele (C#) aufgeführt sind.
Anforderungen
Diese Anforderungen müssen zum Erstellen und Ausführen dieses Beispiels erfüllt sein:
- Microsoft Visual Studio 2022.
- Zugriff auf Dataverse mit Rechten, um Datenvorgänge auszuführen.
Wie man dieses Beispiel ausführt
Klonen Sie das Repository Power Apps-Samples, oder laden Sie es herunter.
Suchen Sie den Ordner /dataverse/webapi/C#-NETx/ConditionalOperations/.
Öffnen der Datei
ConditionalOperations.slnmit Visual Studio 2022Bearbeiten Sie die
appsettings.json-Datei, um die folgenden Eigenschaftswerte festzulegen:Eigenschaften Anweisungen UrlDie Url für Ihre Umgebung. Ersetzen Sie den https://yourorg.api.crm.dynamics.com-Wert des Platzhalters durch den Wert für Ihre Umgebung. Gehen Sie zu Entwicklerressourcen anzeigen, um die URL für Ihre Umgebung zu finden.UserPrincipalNameErsetzen Sie den you@yourorg.onmicrosoft.com-Wert des Platzhalters durch den UPN-Wert, den Sie für den Zugriff auf die Umgebung verwenden.PasswordErsetzen Sie den yourPassword-Wert des Platzhalters durch das von Ihnen verwendete Kennwort.Die Datei
appsettings.jsonspeichernDrücken Sie F5, um das Beispiel auszuführen.
Code
Der Code für dieses Beispiel ist hier: PowerApps-Beispiele/dataverse/webapi/C#-NETx/ConditionalOperations/Program.cs
Veranschaulichung
Dieses Beispiel umfasst vier Regionen:
Abschnitt 0: Beispielaufzeichnungen erstellen
Vorgänge:
- Einzelkonto-Datensatz erstellen.
- Ruft den Datensatz ab und speichert den ETag-Wert als
initialAcctETagVal.
Abschnitt 1: Conditional GET
Vorgänge:
Versucht, den Datensatz abzurufen, durch Festlegen des
If-None-Match-Headers mit deminitialAcctETagVal-Wert.Anfrage schlägt wie erwartet mit
304 NotModifiedfehl.Aktualisieren Sie den Spaltenwert des Datensatzes
telephone1.Versuchen Sie erneut, den Datensatz abzurufen, indem Sie den
If-None-Match-Header mit deminitialAcctETagVal-Wert festlegen.Die Anforderung ist erfolgreich, da der anfängliche ETag-Wert nicht mehr übereinstimmt.
Speichern Sie den neuen ETag-Wert als
updatedAcctETagVal.
Abschnitt 2: Optimistische Parallelität beim Löschen und Aktualisieren
Vorgänge:
Versuchen Sie, die ursprüngliche Kontoeinstellung zu löschen, indem Sie den
If-Match-Header mit deminitialAcctETagVal-Wert festlegen.Anfrage schlägt wie erwartet mit
412 PreconditionFailedfehl.Versuchen Sie, die ursprüngliche Kontoeinstellung zu aktualisieren, indem der
If-Match-Header mit deminitialAcctETagVal-Wert festgelegt wird.Anfrage schlägt wie erwartet mit
412 PreconditionFailedfehl.Versuchen Sie, die ursprüngliche Kontoeinstellung zu aktualisieren, indem der
If-Match-Header mit demupdatedAcctETagVal-Wert festgelegt wird.Die Anforderung ist erfolgreich, da der ETag-Wert mit dem aktuellen Wert für den Datensatz übereinstimmt.
Abschnitt 3: Beispielaufzeichnungen löschen
Vorgänge: Ein Verweis auf jeden in diesem Beispiel erstellten Datensatz wurde einer Liste hinzugefügt, während sie erstellt wurde. Dieser Abschnitt sendet eine $batch-Aufforderung zum Löschen des Datensatzes.
Bereinigung
Standardmäßig löscht dieses Beispiel alle darin erstellten Datensätze. Wenn Sie die erstellten Datensätze nach Abschluss des Beispiels anzeigen möchten, ändern Sie die deleteCreatedRecords-Variable in false. Sie werden dann aufgefordert, zu entscheiden, ob Sie die Datensätze löschen möchten.
Siehe auch
Bedingte Vorgänge mithilfe der Web-API ausführen
Verwenden der Dataverse-Web-API
WebAPIService-Klassenbibliothek (C#)
Web-API-Beispiele
Beispiel grundlegender Web-API-Operationen (C#)
Beispiel fürWeb API-Abfragedaten (C#)
Beispiel für Internet-API-Funktionen- und Aktionen (C#)
Beispiel für Web-API-Tabellen-Schemaoperationen (C#)
Web-API WebApiService-Beispiel für parallele Operationen (C#)
Beispiel für parallele Web-API-Vorgänge mit TPL Dataflow-Komponenten (C#)