Freigeben über


Beispiel: Task Parallel Library mit CrmServiceClient

Dieses C# .NET-Beispiel zeigt, wie die CrmServiceClient-Klasse mit der Task Parallel Library (TPL) verwendet wird.

Hinweis

Sie können in diesem Beispiel den ServiceClient statt der CrmServiceClient-Klasse verwenden.

Mit der Task Parallel Library können Entwickler produktiver arbeiten, indem sie den Prozess des Hinzufügens von Parallelität und Gleichzeitigkeit zu Anwendungen vereinfacht. Durch Hinzufügen von Parallelität kann der Gesamtdurchsatz für Anwendungen, die eine große Anzahl von Dataverse-Vorgängen in kurzer Zeit ausführen müssen, erheblich verbessert werden.

Anforderungen

  • Visual Studio 2019 oder höher
  • Dataverse Testumgebung und gültige Benutzeranmeldeinformationen

Wie das Beispiel ausgeführt wird

  1. Klonen Sie das Repository PowerApps-Beispiele, sodass Sie eine lokale Kopie haben.
  2. Öffnen Sie die Datei dataverse\Xrm Tooling\TPLCrmServiceClient\TPLCrmServiceClient.sln in Visual Studio.
  3. Drücken Sie F5, um das Programm zu kompilieren und auszuführen.

Veranschaulichung

Weil die CrmServiceClient-Klasse das Behandeln der vorübergehenden Fehler beinhaltet, die von den Dataverse-Dienstschutzeinschränkungen ausgelöst werden, ist die Kombination von TPL und CrmServiceClient für die Erstellung von Anwendungen wertvoll, die den Durchsatz optimieren und gleichzeitig gegenüber der Fehler der Dienstschutzeinschränkungen resilient sind, indem Anforderungen, die aufgrund dieser Fehler abgelehnt werden, neu versucht werden. Die CrmServiceClient.Clone()-Methode ermöglicht es TPL, den Client mit mehreren Threads zu verwenden.

Für weitere Informationen gehen Sie zu: API-Grenzwerte für den Serviceschutz

Hinweis

Sie könnten mit den gleichen Ergebnissen auch die ServiceClient.Clone-Methode in diesem Beispielcode anstelle von CrmServiceClient.Clone() verwenden.

Dieses Beispiel generiert eine Reihe von Kontotabellenzeilen mit der Parallel.ForEach-Methode und verwendet diese Technik dann erneut, um die erstellten Tabellen zu löschen. Standardmäßig werden in diesem Beispiel nur 10 Zeilen erstellt, was nicht ausreicht, um die Fehler der Dienstschutz-API-Begrenzung zu treffen. Wenn Sie den Wert der Variablen numberOfRecords auf 10000 erhöhen, können Sie mit Fiddler beobachten, wie einige der Anfragen abgelehnt und erneut geprüft werden.

Siehe auch

Parallele Aufgabenbibliothek (TPL)

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).