De programmeringsmodellen voor Microsoft Dynamics CRM 2015
Gepubliceerd: november 2016
Is van toepassing op: Dynamics CRM 2015
Microsoft Dynamics 365 biedt verschillende programmeringsparadigma's die zijn ontworpen om u de mogelijkheid te bieden te bepalen wat het beste werkt voor uw behoeften. Er is een eerder gebonden entiteitsgegevensmodel toegevoegd dat een "objectservices"-laag bevat die met de stack wordt geïntegreerd en entiteitswaarden beschikbaar maakt voor .NET Framework-objecten. U kunt ook het later gebonden scenario gebruiken.
Programmeerscenario's
De volgende grafiek toont de belangrijkste programmeerscenario's voor Microsoft Dynamics CRM 2015 en Microsoft Dynamics CRM Online 2015 Update.
Gebruik deze Microsoft Dynamics 365-programmeringsparadigma's voor het volgende:
Eerder gebonden – Microsoft Dynamics 365 gebruikt een entiteitsgegevensmodel en Windows Communication Foundation (WCF) Data Services-technologie om een nieuwe set hulpprogramma's te bieden die de ontwikkeling vereenvoudigen van internet ondersteunende toepassingen die communiceren met Microsoft Dynamics 365. Dit maakt ook een extra programmeringsparadigma mogelijk: een organisatieservicecontext die wijzigingen bijhoudt in objecten en .NET Language-Integrated Query (LINQ)-query's ondersteunt om gegevens op te halen van Microsoft Dynamics 365. Zie De eerder gebonden entiteitklassen in code gebruiken voor meer informatie.
Later gebonden - Met dit programmeringsparadigma kunt u code schrijven die toegang heeft tot entiteiten die nog niet zijn gedefinieerd. U kunt dit bijvoorbeeld gebruiken om een aangepast zoekprogramma te schrijven dat werkt voor elke installatie van Microsoft Dynamics 365, ongeacht de aanpassingen die u hebt gemaakt. Zie De later gebonden entiteitklasse in code gebruiken voor meer informatie. Dit paradigma maakt ook mogelijk dat code op een zo'n generieke manier wordt geschreven dat er geen bepaald type entiteit nodig is.
REST - Het REST eindpunt voor AJAX- en Microsoft Silverlight-clients biedt een alternatieve interface die u kunt gebruiken om te werken met Microsoft Dynamics 365-gegevens. In plaats van de SOAP-gebaseerde webservice direct aan te roepen kunt u aanvragen uitvoeren met een service die is gebaseerd op een URI. Zie Het OData-eindpunt gebruiken met webresources voor meer informatie.
WSDL - Met dit programmeringsparadigma kunt u code ontwikkelen voor niet-.NET clients en het is niet afhankelijk van het gebruik van Microsoft Dynamics 365-assembly's. U kunt dit programmeringsmodel bijvoorbeeld gebruiken om code voor Microsoft Dynamics 365 te schrijven in Java. Zie Java en andere niet-.NET clienttoepassingen schrijven voor meer informatie.
Programmeren met eerdere en latere binding
In Microsoft Dynamics 365 kunt u uit verschillende programmeringsscenario's kiezen om het model te vinden dat het beste aan uw wensen voldoet.
Het belangrijkste ontwikkelingsscenario voor Microsoft Dynamics 365 voor de Microsoft .NET Framework verwijst naar twee assembly's waarmee u verbinding kunt maken met elk Microsoft Dynamics 365-systeem, voor zowel eerder als later gebonden typen. Dit scenario kan worden beschreven als latere binding of losse typering. Als u later gebonden typen wilt gebruiken, gebruikt u de klasse Entity. Deze klasse definieert een verzameling kenmerken die kan worden gebruikt om de waarden van kenmerken op te halen en in te stellen. Als u dit model wilt gebruiken, moet de exacte logische naam bekend zijn (en zijn opgegeven) als een tekenreeks.
U kunt ook eerder gebonden klassen gebruiken die direct worden gegenereerd vanuit de metagegevens, die alle aanpassingen omvatten. De gegenereerde klassen bieden eerdere binding en IntelliSense om u te helpen met het schrijven van aangepaste code. Zie Eerder gebonden entiteitklassen maken met het hulpmiddel voor het genereren van code (CrmSvcUtil.exe) voor meer informatie.
De structuur van de entiteitklasse is de volgende:
De DynamicEntity-klasse is vervangen door de basisklasse Entity. Dit houdt in dat alle typen detecteerbaar zijn tijdens build-time en runtime, waardoor alle entiteiten met sterke typering nu entiteiten met losse typering zijn. U kunt beide programmeringsscenario's in dezelfde code gebruiken, zoals in het volgende voorbeeld:
Account entity = new Account();
entity["name"] = "My Account"; //loosely typed, late binding
entity.AccountNumber = "1234"; //strongly typed, early binding
De Microsoft Dynamics CRM SDK-documentatie bevat voorbeelden die beide programmeringsscenario's gebruiken. De eerder gebonden voorbeelden gebruiken een bestand met klassen met sterke typering die worden gegenereerd met het programma voor het genereren van code vanuit een nieuwe, niet-aangepaste installatie van Microsoft Dynamics 365. Als u de voorbeelden wilt uitvoeren, moet u een bestand met klassen met sterke typering genereren vanuit uw installatie. U bepaalt of u een proxy-assembly maakt vanuit het gegenereerde codebestand of het bestand direct in uw project opneemt, zoals in de voorbeelden is gedaan. Voor meer informatie over uw keuzen voor de ontwikkelingsstijl raadpleegt u Uw ontwikkelingsstijl voor beheerde code kiezen.
Zie ook
Ontwikkelaaroverzicht
Ondersteunde extensies voor Microsoft Dynamics CRM 2015
Assemblages in de Microsoft Dynamics CRM 2015 SDK
Naamconventies voor entiteiten en kenmerken
Inleiding tot entiteiten in Microsoft Dynamics CRM 2015
Inleiding in entiteitskenmerken in Microsoft Dynamics CRM 2015
© 2017 Microsoft. Alle rechten voorbehouden. Auteursrecht