As a developer, you will spend a lot of time working with the Microsoft Dynamics CRM APIs because they provide the recommended access to the system data. The Microsoft Dynamics CRM APIs consist of a collection of Web services and assemblies that you can consume directly with your custom programming code or application.
Microsoft Dynamics CRM 4.0 provides multiple ways for you to enhance its native functionality with your own unique code. This chapter will examine how you can communicate with the APIs. Subsequent chapters explore the integration options in further detail. We’ll cover the following topics in this chapter:
Overview of the Microsoft Dynamics CRM 4.0 SDK
Accessing the APIs in Microsoft Visual Studio 2008
Using the CrmServiceWeb Service
Using the MetadataService Web Service
Using the CrmDiscoveryService Web Service
Connecting to Microsoft Dynamics CRM IFD
Connecting to Microsoft Dynamics CRM Offline
Connecting to Microsoft Dynamics CRM Online
The Microsoft Dynamics CRM 4.0 SDK defines all the supported programming interaction points, also known as application programming interfaces (APIs), that you can access when writing code that integrates with Microsoft Dynamics CRM. Using the APIs for your customizations provides several significant benefits:
Ease of use. The APIs include hundreds of pages of documentation, complete with real-world examples, code samples, and helper classes to help you write code that works with Microsoft Dynamics CRM.
Supportability. If you encounter technical problems or issues using the APIs, you can contact Microsoft technical support or use the Microsoft Dynamics CRM public newsgroup for assistance.
Upgrade support. Microsoft makes every effort to ensure that code that you create for Microsoft Dynamics CRM using the APIs will upgrade smoothly with future versions of the product, even if the underlying Microsoft SQL Server database changes radically. This is also true for any updates or hotfixes that Microsoft might release for Microsoft Dynamics CRM.
Certification. By following the documented APIs, you can submit your customizations to a third-party testing vendor to certify that your application works within the confines of the SDK. This certification provides comfort and reassurance for people evaluating your customizations.