Die Programmiermodelle für Microsoft Dynamics 365
Veröffentlicht: Januar 2017
Gilt für: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online
Microsoft Dynamics 365 verfügt über mehrere Programmiermodelle, die angewendet werden, um Ihnen die Flexibilität zu gewähren, sich zu entscheiden, was am besten für Ihre Anforderungen ist.
Das folgende Diagramm zeigt die wichtigsten Programmierbarkeitsszenarien für Microsoft Dynamics 365 (online und lokal). Verwenden Sie die entsprechenden Microsoft Dynamics 365-Programmiermodelle für den Typ von Lösungen, die Sie erstellen.
In diesem Thema
Herstellen einer Verbindung mit Microsoft Dynamics 365
Erweiterungen auf dem Server
Erweiterung in der Anwendung
Herstellen einer Verbindung mit Microsoft Dynamics 365
Wenn Sie Clients zum Zugriff auf Daten in Microsoft Dynamics 365 schreiben, haben Sie zwei Möglichkeiten: Sie können die Web-API oder den Organisationsservice verwenden.
Internet-API
Die Web-API wurde in Microsoft Dynamics 365 eingeführt und bietet eine Entwicklungserfahrung, die für eine Vielzahl von Programmiersprachen, Plattformen und Geräte verwendet werden kann. Die Web-API implementiert OData (Open Data Protocol) v4. OData ist ein OASIS-Standard zum Erstellen und Nutzen von RESTfulAPIs für umfassende Datenquellen.
Wenn Sie die Web-API verwenden, können Sie aus einer Liste mit den Community-unterstützten Bibliotheken, die den OData v4-Standard unterstützen, auswählen. Sie können außerdem direkt Code mit HTTP schreiben.Weitere Informationen:Verwenden der Microsoft Dynamics 365-Web-API
Wenn Sie eine Verbindung mit Microsoft Dynamics 365 (online) oder lokalen Umgebungen mit Bereitstellung mit Internetzugriff (IFD) herstellen, können Sie Azure AD-Authentifizierungsbibliotheken (Active Directory Authentication Library; ADAL) verwenden, um die Authentifizierung von einer Vielzahl von Programmiersprachen und Plattformen aus zu aktivieren.Weitere Informationen:Authentifizieren von Microsoft Dynamics 365 mit der Web-API
Hinweis
Der Organisationsdatendienst (bzw. OData-Endpunkt) ist ein OData v2-Service, der in Microsoft Dynamics 365 zugunsten der Web-API abgelehnt wurde. Der Organisationsdatendienst ist im vorangehenden Diagramm nicht enthalten. Der Organisationsservice ist weiterhin verfügbar, um Code zu unterstützen, der diesen verwendet hat. Für eine Neuentwicklung für Microsoft Dynamics 365 wird jedoch die Web-API empfohlen.Weitere Informationen:Verwenden des OData-Endpunkts mit Webressourcen
Organisationsdienst
Als .NET-Entwickler können Sie entweder die Web-API oder den Organisationsservice verwenden. Mit dem Organisationsservice können Sie einen Satz Assemblys und Tools verwenden, um stark typisierte Klassen zu generieren, die benutzerdefinierte Entitäten und Attribute umfassen, die zu einer Microsoft Dynamics 365-Instanz hinzugefügt wurden.
Mit SDK-Assemblys und Tools für Codegenerierung können Sie auch eine OrganizationServiceContext einschließen, die auf dem gleichen Konzept basiert wie DataServiceContext in Windows Communication Foundation (WCF)-Datendiensten. Mit dieser Klasse können Sie Änderungen nachverfolgen, Identitäten und Beziehungen verwalten und auf den Microsoft Dynamics 365.NET Language-Integrated Query (LINQ)-Anbieter zugreifen, sodass Sie Abfragen mit LINQ erstellen können. Wenn Sie die Tools für Codegenerierung verwenden, rufen Sie stark typisierte Klassen für Entitäten und Attribute ab, die definiert werden, wenn das Codegenerierungstool ausgeführt wird. Diese heißen früh gebundene-Klassen.Weitere Informationen:Verwenden Sie im Code die Entitätsklassen mit früher Bindung
Wenn Ihr Code mit Entitäten und Attributen verwendet werden muss, die zum Zeitpunkt der Ausführung der Codegenerierungstools nicht bekannt waren, können Sie eine Entity-Klasse verwenden, die das Angeben von Entitäten und Entitätsattributen in Ihrem Code erlaubt. Dieser spät gebundene Stil des Schreibens von Code bietet mehr Flexibilität, erlaubt jedoch keine Kompilierzeitüberprüfung aller Typen, sodass keine impliziten Umwandlungen auftreten. Späte Bindung überprüft nur Typen, wenn das Objekt erstellt oder eine Aktion für den Typ ausgeführt wurde. Die Entity Klasse erfordert, dass Typen explizit angegeben werden, um implizite Umwandlungen zu vermeiden.Weitere Informationen:Verwenden Sie die spät gebunden Entitätsklasse in Code
Wenn Sie einen Windows-Client erstellen oder Windows PowerShell verwenden, stellt Xrm.Tooling einen Satz APIs bereit, die SDK-Assemblys verwenden, um zusätzliche Funktionalität und Ressourcen speziell für Windows-Cliententwicklung bereitzustellen.Weitere Informationen:Erstellen von Windows-Client-Anwendungen mithilfe der XRM-Tools
Erweiterungen auf dem Server
Sie können Code schreiben, der auf Ereignisse wartet und benutzerdefinierte Geschäftslogik anwendet, um das Standardverhalten der Plattform zu ändern oder zu erweitern. Dieser Code ist nur verfügbar zum Schreiben mit verwaltetem .NET-Code, und die Entwicklererfahrung basiert auf den gleichen Objekten, die in den SDK-Assemblys definiert werden. Sie können mit dem Organisationsservice arbeiten, um Vorgänge mit Microsoft Dynamics 365-Daten auszuführen.Weitere Informationen:Schreiben von Plug-Ins, um Geschäftsprozesse zu erweitern.
Sie können auch benutzerdefinierte Prozesse auf Grundlage des Windows Workflow Foundation-Programmiermodells erstellen. Sie können mehrere unterschiedliche Arten Prozesse erstellen. Meist verwenden Sie den Workflowdesigner. Aber wenn es Funktionen gibt, die nicht mit dem Designer möglich sind, können Sie Prozesse mithilfe des Codes definieren.Weitere Informationen:Automatisieren Sie Geschäftsprozesse mithilfe des Dynamics 365-Prozesses
Erweiterung in der Anwendung
Jede der Client-Anwendungen, die von Microsoft Dynamics 365 bereitgestellt werden, ermöglicht das Definieren von Anpassungen und Bereitstellen mehrerer Typen von Clients. Die Webanwendung, Microsoft Dynamics 365 für Outlook, Dynamics 365 für Tablets und Dynamics 365 für Smartphones bieten jeweils Funktionen zum Einschließen benutzerdefinierter Navigation und Befehlsoptionen wie auch Xrm.Page-Objektmodell und Xrm.Utility-Funktionen, die Sie mit JavaScript verwenden können, um Reaktionsumgebungen im Client zur Verfügung zu stellen.JavaScript-Bibliotheken, HTML-Seiten, Bilder und andere Dateitypen, die im Client verwendet oder angezeigt werden können, sind als über URL adressierbare Webressourcen verfügbar.Weitere Informationen:Verwendung von JavaScript mit Microsoft Dynamics 365 und Webressourcen für Microsoft Dynamics 365.
Wenn Sie auf Microsoft Dynamics 365-Daten zugreifen müssen, die nicht im Kontext verfügbar sind, in dem der JavaScript-Code ausgeführt wird, können Sie Server-Aufrufe vornehmen, um die erforderlichen Daten abzurufen. Der Organisationsservice kann verwendet werden, es ist jedoch viel einfacher, die Web-API mit JSON zu verwenden, statt das vom Organisationsservice geforderte XML. Da das Skript im Kontext der Anwendung ausgeführt wird, werden Sie automatisch authentifiziert.Weitere Informationen:Erste Schritte mit der Microsoft Dynamics 365-Web-API (clientseitiges JavaScript)
Siehe auch
Wie kann ich ...
Lernprogramme und Ressourcen für den Einstieg in die Entwicklung für Microsoft Dynamics 365
Bewährte Methoden für das Entwickeln mit Microsoft Dynamics 365
Entwicklertools
Microsoft Dynamics 365
© 2017 Microsoft. Alle Rechte vorbehalten. Copyright