Skip to content

Latest commit

 

History

History
26 lines (21 loc) · 2.82 KB

Documentation.md

File metadata and controls

26 lines (21 loc) · 2.82 KB

Project Description

The purpose of this project is to distribute the PFE Dynamics Core Library for Dynamics CRM source code to the customer/partner community. We developed this library in response to requests from customers and partners for whom we've delivered sample/prototype solutions built on Dynamics CRM that serve an educational purpose. In delivering those solutions, we repeatedly encountered the need to implement known best-practices when authenticating and interacting with CRM services regardless of the solution context. Since consolidating those techniques into a reusable library, we've seen customer and partners' solutions that reference our library simultaneously increase performance and reduce code.

Library Contents

We are providing four separate branches of the library, one that targets Dynamics CRM 2011 (V5), another that targets Dynamics CRM 2013 (V6), a third that targets Dynamics CRM 2015 (V7), and a fourth that targets Dynamics CRM 2016 (V8). While the code is virtually identical today due to the overlap in programming models, we do see the potential for them to diverge as new capabilities and API's for Dynamics CRM are released. This library contains the following key components:

  • XrmServiceUriFactory Class Provide a common pattern for constructing Uri instances that target Dyanmics CRM endpoints
  • XrmServiceManager Classes Provide a simplified and efficient connection pattern to Dynamics CRM endpoints regardless of the authentication method.
  • ParallelServiceProxy Classes Provide abstracted parallelized processing of Dynamics CRM service operations.
  • Query Extensions Methods for retrieving all pages and performing operations on each page of results.
  • Security Extensions Methods for encrypting/decrypting values and converting between String and SecurityString types.
  • BatchRequestExtensions Methods for converting request collections into batched ExecuteMultipleRequest collections for parallel batch processing. Specify batch size as method argument.

Sample Code