Wählen Sie den Entwicklungsstil aus für Dynamics 365 Customer Engagement (on-premises)
Das SDK bietet eine Vielzahl von Methoden und Technologien, die Sie verwenden können, wenn Sie Code für den Zugriff auf die Webdienste von Dynamics 365 for Customer Engagement oder für die Erweiterung der Anwendung schreiben. Dieses Thema enthält Anweisungen, wie den Entwicklungsstil je nach Ihrem Technologiebereich auszuwählen.
.NET vs. Nicht-.NET
Das erste, was Sie beim Schreiben von Code zur Erweiterung von Dynamics 365 Customer Engagement (on-premises) beachten sollten, ist, ob Ihr Code mit dem .NET Framework geschrieben wurde.
Wenn Ihr Code unter Verwendung des .NET Frameworks geschrieben wurde, sollten Sie je nach dem, was Sie erstellen, eine der folgenden Möglichkeiten nutzen:
Wenn Sie Plug-ins, angepasste Workflow-Aktivitäten oder angepasste XAML-Workflows erstellen, verwenden Sie die SDK-Assemblies, Mehr Informationen: .NET Entwicklung: Verwenden Sie Dynamics 365 Customer Engagement-App-Assemblies
Wenn Sie Windows-Anwendungen für Dynamics 365 Customer Engagement (on-premises) erstellen, können Sie XRM-Assemblies nutzen. Weitere Informationen: .NET Entwicklung: Verwendung von XRM Tooling-Montagen
Wenn Sie Nicht-Windows-Anwendungen für Dynamics 365 erstellen, verwenden Sie Web-API. Weitere Informationen: Das Dynamics 365 Customer Engagement Web-API verwenden
Wenn Ihr Code nicht mit dem .NET Framework geschrieben wurde, verwenden Sie Web-API. Weitere Informationen: Das Dynamics 365 Customer Engagement Web-API verwenden
Das folgende Flussdiagramm veranschaulicht, welcher Entwicklungsstil zum Entwickeln für Dynamics 365 Customer Engagement (on-premises) sie auswählen sollten:
.NET-Entwicklung: Verwendung der SDK-Assemblys
Die SDK-Assemblys bieten Klassen, die Sie verwenden können, um Verbindung mit Dynamics 365 Customer Engagement (on-premises)-Webdiensten herzustellen, um die Organisation zu ermitteln und die geschäftlichen Vorgänge wie Erstellen, Abfragen auszuführen. Aktualisieren und Löschen der Daten in Dynamics 365 Customer Engagement (on-premises). Die SDK-Assemblys sind als NuGet Pakete verfügbar. Weitere Informationen: Abonnieren Sie SDK Montage-Updates mit NuGet.
Wichtig
Sie sollten die neueste Version der SDK-Assemblies verwenden, um Ihre Plugins, benutzerdefinierten Workflow-Aktivitäten oder XAML-Workflows zu erstellen. Ab Version 9.x sollten Sie .NET Framework Version 4.6.2 verwenden.
Wenn Sie jedoch .NET Framework 4 verwenden und die Klasse CrmConnection der SDK-Erweiterungen (veraltet) nutzen, um eine Verbindung zu Dynamics CRM 2016 Service Pack 1 On-Premises (lokal) und CRM Online 2016 Update 1 (Version 8.1.0) oder höher herzustellen, müssen Sie Version 6.1.2 der Montagen verwenden. Andernfalls ist es nicht möglich zu verbinden. Weitere Informationen zur Abwärtskompatibilität finden Sie unter Blog: Dynamics 365 Customer Engagement (on-premises) SDK-Abwärtskompatibilität
Wenn Sie die SDK-Assemblys verwenden, um Code zu schreiben, können Sie mit dem Organisationswebdienst (SOAP-Endpunkt) eine Verbindung mit einer Instanz von Dynamics 365 Customer Engagement (on-premises) herstellen und die unterstüzten Webdienstvorgänge ausführen. Weitere Informationen: Verwendung des Dynamics 365 Customer Engagement Organization Service
Notiz
Die gewünschten SDK-Assemblys werden migriert, um intern die Web-API anstelle des veralteten 2011 SOAP-Endpunkts zu verwenden. Wenn dies geschieht, kann jeder Code, der mit der SDK-Assemblys erstellt wird, weiterhin unterstützt werden, denn er leitet automatisch vom 2011 SOAP-Endpunkt an die Web-API weiter. Dieses Update ist für Sie größtenteils transparent und erfordert lediglich, dass Sie die Laufzeitordner-SDK-Assemblys Ihrer Anwendung durch überarbeitete Assemblys ersetzen. Weitere Details sowie neue Informationen zur .NET Core-Entwicklung finden Sie unter Apps auf Dataverse ServiceClient umstellen.
Erstellen und Bereitstellen von Plug-ins oder angepassten Workflowaktivitäten: Die Plug-In- und benutzerdefinierten Workflowaktivitätsklassen ermöglichen das Erstellen von Ereignishandlern für die Ausführung der angepassten Geschäftslogik, die Sie in Dynamics 365 Customer Engagement (on-premises) integrieren können, um das Standardverhalten der Plattform zu ändern oder zu erweitern.
Wenn Sie Plug-Ins und benutzerdefinierte Workflowaktivitäten neu schreiben, müssen Sie das Plug-In-Registrierungstool verwenden, um sie zu registrieren. Das Tool stellt eine grafische Benutzeroberfläche bereit und unterstützt das Registrieren von Plug-Ins und benutzerdefinierten Workflowaktivitäten in Dynamics 365 Customer Engagement (on-premises). Weitere Informationen: Plug-in-Entwicklung und Angepasste Workflow-Aktivitäten (Workflow-Montagen)
Erstellen und Bereitstellen benutzerdefinierter XAML-Workflows: Dynamics 365 Customer Engagement (on-premises) und IFD unterstützt die Möglichkeit, benutzerdefinierte XAML-Workflows zu erstellen. Wenn Sie den Visual Studio Workflow Designer verwenden, können Sie benutzerdefinierte XAML-Workflows, die auch als deklarative Workflows bezeichnet werden, erstellen, indem Sie Workflowaktivitäten von der Toolbox auf die Entwurfsoberfläche ziehen, Variablen erstellen und Eigenschaften dieser Aktivitäten festlegen, um den Funktionsumfang des Workflows zu implementieren. Sie können die integrierten Windows Workflow Foundation-Aktivitäten oder Prozessaktivitäten verwenden, die für Dynamics 365 Customer Engagement (on-premises) spezifisch sind. Weitere Informationen: XAML Workflows
Programmiermodelle mit früher und später Bindung für Dynamics 365 Customer Engagement (on-premises)-Entitäten: Wenn Sie die SDK-Assemblys verwenden, können Sie aus zwei Programmiermodellen auswählen:
Früh gebunden Spät gebunden Verwenden Sie das Codegenerierungstool (CrmSvcUtil), um aus der Entity-Klasse abgeleitete Entitätsklassen mit früher Bindung zu erstellt, die Sie verwenden können, um auf Geschäftsdaten in Dynamics 365 Customer Engagement zuzugreifen. Diese Klassen enthalten eine Klasse für jede Entität in Ihrer Installation, einschließlich benutzerdefinierter Entitäten. Weitere Informationen: Verwenden Sie die Early Bound Entity Classes im Code Die Entity-Klasse enthält den logischen Namen einer Entität und einen Eigenschaftsbehälterarrray des Entitätsattributs. Dadurch können Sie die späte Bindung verwenden, sodass Sie mit Typen wie benutzerdefinierten Entitäten und benutzerdefinierten Attributen arbeiten können, die nicht vorhanden waren, als Ihre Anwendung kompiliert wurde. Weitere Informationen: Verwenden Sie die Late Bound Entity Klasse in Code Daten in Dynamics 365 Customer Engagement (on-premises) abfragen: Es gibt drei Möglichkeiten, über die Sie Daten aus Dynamics 365 Customer Engagement (on-premises) mithilfe von SDK-Assemblys abrufen können: FetchXML, QueryExpression und .NET LINQ. Weitere Informationen: Daten mit Abfragen unter Verwendung von SDK-Montagen abrufen
.NET-Entwicklung: Verwendung der Dynamics 365-XRM Tooling-Assemblies
Die XRM-Tooling-Assemblies nutzen die SDK-Assembly-APIs (Organization Service und IDiscoveryService), um eine einfache Authentifizierungsunterstützung mit weniger Codezeilen und über Windows PowerShell-Cmdlets zu bieten. Alle Funktionsaufrufe in diesen Klassen bieten Thread-Sicherheit für Aktionen, die in Customer Engagement in einer Multithreading-Umgebung ausgeführt werden. Das XRM Tooling bietet ein allgemeines Steuerelement für die Anmeldung mit integrierter Authentifizierungslogik und die Möglichkeit, die Authentifizierungsdaten sicher zu speichern und wiederzuverwenden, um eine konsistente und nahtlose Anmeldung bei Customer Engagement über Ihre Windows Client-Anwendungen zu ermöglichen. Weitere Informationen: Erstellen von Windows Client-Anwendungen mit den XRM Tools
Die XRM Tooling-Assemblys werden als NuGet Pakete bereitgestellt. Die Pakete werden unter dem Profil crmsdk bereitgestellt. Wählen Sie ein beliebiges Paket in der Liste mit dem Namen „Xrm Tooling“, um zur Seite mit den Paketdetails zu navigieren.
Mit der in den XRM-Tools verfügbaren Unterstützung für Verbindungszeichenfolgen und der Veraltung der SDK-Erweiterungen für Customer Engagement müssen Sie die XRM-Tooling-Baugruppen anstelle der Klasse CrmConnection verwenden, um eine Verbindung zu Dynamics 365 Customer Engagement (on-premises) herzustellen. Weitere Informationen: Verwenden Sie Verbindungsstrings im XRM Tooling, um eine Verbindung zu Dynamics 365 Customer Engagement (on-premises) und Beispiel: Vereinfachter Verbindungs-Schnellstart mit Dynamics 365 Customer Engagement (on-premises)
Wählen Sie aus, wie Sie mit Dynamics 365 Customer Engagement (on-premises) verbinden möchten.
Abhängig vom Entwicklungsstil (.NET oder Nicht-.NET) wählen Sie aus, wie Ihr Code die Benutzer in Dynamics 365 Customer Engagement (on-premises) authentifiziert. Die folgende Tabelle bietet kurze Informationen zum Authentifizierungsmodell, die Sie abhängig vom Entwicklungsstil berücksichtigen sollten:
Entwicklungsstil | Beschreibung |
---|---|
.NET: SDK-Assemblys | Die SDK-Assemblys verwenden Windows Communication Foundation (WCF)-Technologie zur Einrichtung eines Kommunikationskanals mit den Dynamics 365 Customer Engagement (on-premises)-Webdiensten. Das SDK vereinfacht die Verwendung der WCF-Technologie und anspruchsbasierter Authentifizierung, indem Hilfsproxyklassen bereitgestellt werden, die das Schreiben von Anwendungen, die eine Verbindung mit den Dynamics 365 Customer Engagement (on-premises)-Webdiensten herstellen und diese für die Authentifizierung verwenden, vereinfachen. Weitere Informationen Beispiel: Authentifizieren von Benutzern mit Dynamics 365-Webdiensten |
.NET: XRM-Tooling-Assemblies | Verwenden Sie die Verbindungszeichenfolge, CrmServiceClient-Klasse oder die XRM-Tooling-PowerShell-Cmdlets, um mit Dynamics 365 Customer Engagement (on-premises) zu verbinden. Weitere Informationen: Verwenden von Verbindungszeichenfolgen im XRM-Tooling zur Herstellung einer Verbindung mit Dynamics 365 Customer Engagement (on-premises), Verwendung von CrmServiceClient-Konstruktoren, um sich mit Dynamics 365 Customer Engagement Apps zu verbinden, Verwenden der PowerShell-Cmdlets für XRM-Tools, um eine Verbindung mit Dynamics 365 Customer Engagement (on-premises) herzustellen |
Web-API von Dynamics 365 Customer Engagement (on-premises) | Mehr Informationen: Authentifizieren bei Dynamics 365 Customer Engagement mit der Web-API |
Ausführliche Informationen zum Authentifizieren von Benutzern, die mit Dynamics 365 Customer Engagement (on-premises) verbinden, finden Sie unter Authentifizieren von Benutzern bei Dynamics 365 Customer Engagement (on-premises).
Siehe auch
Authentifizieren von Benutzern in Dynamics 365 Customer Engagement (on-premises)
Lernprogramme für den Einstieg in die Entwicklung für Dynamics 365 Customer Engagement (on-premises)
Schreiben von Code für Dynamics 365 Customer Engagement 2011 und Dynamics 365 Customer Engagement (Web Services, JavaScript)
Einführung in Programmiermodelle für Dynamics 365 Customer Engagement (on-premises)