Build Windows client applications using the XRM tools


Applies To: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

XRM tooling is a set of APIs built on top of the Microsoft Dynamics 365 SDK assembly APIs (Organization service and IDiscoveryService) that provide support for building Windows client applications for Microsoft Dynamics 365. It provides the following capabilities:

  • Supports all the authentication modes to sign in to Dynamics 365, including OAuth.

  • Provides Windows PowerShell support for authentication and connection to Dynamics 365.

  • Provides thread safety for actions performed in Dynamics 365 in a multithreaded environment. More information: Multithreading in Components, Thread-Safe Components

  • Provides a common Windows Presentation Foundation (WPF) login control for Dynamics 365 for consistent sign-in experience to Dynamics 365 from your Windows client applications.

  • Supports secure storage of the sign-in credentials and reuse of the stored credentials to automatically sign in to Dynamics 365 after initial sign in.

  • Provides built-in diagnostic tracing and performance reporting of the actions performed in Dynamics 365, which you can configure based on your organization’s requirements.

Components of XRM tooling

XRM tooling has the following three components:

  • Interface for Dynamics 365 SDK assembly APIs: This provides the low-level interaction and wrapper methods for the Dynamics 365 SDK assembly APIs. It is an instrumented API that provides a thread safe environment for making calls to Microsoft Dynamics 365 with built-in diagnostic capabilities to help you determine the performance of individual calls. It also provides a standard set of trace listeners for debugging support. The namespace for this component is Microsoft.Xrm.Tooling.Connector.

  • Common login control: This is a WPF user control that provides a common user interface for the sign in experience to Microsoft Dynamics 365. The login control provides support for all the authentication modes that are supported by Dynamics 365. The common login control has built-in encryption for securely storing your credentials/profile, and then reusing it at runtime to automatically sign in to Dynamics 365. The namespace for this component is Microsoft.Xrm.Tooling.CrmConnectControl.

  • Web resource utility: This provides support for accessing information from the following two types of web resources in Dynamics 365: Image and XML. You can access an image from a Dynamics 365 web resource and return it as WPF BitmapImage objects. Similarly, you can return an XML web resource as a string. The namespace for this component is Microsoft.Xrm.Tooling.WebResourceUtility.

Client applications that use XRM tooling

The following applications in the current version of Dynamics 365 use the common WPF login control for authenticating users while signing in to Dynamics 365 from the client application:

In This Section

Use connection strings in XRM tooling to connect to Dynamics 365

Use CrmServiceClient constructors to connect to Dynamics 365

Use PowerShell cmdlets for XRM tooling to connect to Dynamics 365

Use XRM tooling to execute actions in Dynamics 365

Use XRM tooling with classes generated using the code-generation tool

Use the XRM tooling common login control in your client applications

Configure tracing for XRM tooling

See Also

Sample: Quick start for XRM Tooling API
Use the Microsoft Dynamics 365 Organization service
Discover the URL for your organization using the Organization Service
Extend Microsoft Dynamics 365 on the server
TechNet: Microsoft Dynamics CRM PowerShell Reference
Blog: PowerShell module for performing data operations and manipulating user and system settings in CRM

Microsoft Dynamics 365

© 2016 Microsoft. All rights reserved. Copyright